summaryrefslogtreecommitdiffstats
path: root/sys/contrib
Commit message (Collapse)AuthorAgeFilesLines
...
* | | MFV: Functions name change.pjd2007-04-261-4/+4
| | |
* | | ZIL (ZFS Intent Log) can be safely turned on and off at run time, becausepjd2007-04-241-1/+1
| | | | | | | | | | | | | | | it is only used when dataset is beeing mounted to decide if log should also be opened.
* | | MFp4: Now that ZFS can use FreeBSD's namecache, turn it off by default andpjd2007-04-241-0/+4
| | | | | | | | | | | | turn off DNLC, but don't remove DNLC yet just in case.
* | | MFp4: Rearange the code so vobject is destroyed from reclaim() method likepjd2007-04-242-21/+22
| | | | | | | | | | | | | | | | | | | | | | | | in all other file system on FreeBSD (instead from inactive() method). A nice side-effect of this change, except that it speedups file system when mmaped file are often open/closed, is that it makes FreeBSD's namecache work:)
* | | MFp4: Once page is written successfully, we should clear the dirty bits.pjd2007-04-241-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes slow operations on mmaped files, because without this fix, pages were written to disk multiple times. If one is looking for even greater speed up for such operation, he should disable ZIL (by setting vfs.zfs.zil_disable to 1 in /boot/loader.conf). Disabling ZIL makes fsx run ~9 times faster.
* | | MFp4: Reduce diff against vendor.pjd2007-04-243-2/+4
| | |
* | | MFp4: We have stronger 'lock already initialized' check now, so we canpjd2007-04-241-1/+0
| | | | | | | | | | | | reduce diff against the vendor by removing bzero of this mutex.
* | | Mostly-cosmetic fixes in low-memory warning messages:bmah2007-04-231-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Fix linewrap issues. o Fix two typos (s/Recomended/Recommended/ and s/tunning/tuning/) o Remove a couple of extra instances of the word "of". o Update names of kmem_size variables. Approved by: pjd
* | | Too much diff reduction. 'cmd' has to be u_long.pjd2007-04-231-3/+3
| | | | | | | | | | | | Reported by: delphij
* | | MFp4: Reduce diff against vendor code:pjd2007-04-237-469/+784
| | | | | | | | | | | | | | | | | | - Move FreeBSD-specific code to zfs_freebsd_*() functions in zfs_vnops.c and keep original functions as similar to vendor's code as possible. - Add various includes back, now that we have them.
* | | Fix 'zpool status -v'. To get object number we should use ZFS_DIRENT_OBJ()pjd2007-04-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | macro, as za_first_integer field also contains type. This should be fixed in ZFS itself, but this bug is not visible on Solaris, because there, type is not stored in za_first_integer. On the other hand it will be visible on MacOS X. Reported by: Barry Pederson <bp@barryp.org>
* | | Fix st_rdev handling (implement it, actually).pjd2007-04-222-2/+9
| | | | | | | | | | | | Reported by: gj
* | | MFp4:pjd2007-04-214-24/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @118370 Correct typo. @118371 Integrate changes from vendor. @118491 Show backtrace on unexpected code paths. @118494 Integrate changes from vendor. @118504 Fix sendfile(2). I had two ways of fixing it: 1. Fixing sendfile(2) itself to use VOP_GETPAGES() instead of hacking around with vn_rdwr(UIO_NOCOPY), which was suggested by ups. 2. Modify ZFS behaviour to handle this special case. Although 1 is more correct, I've choosen 2, because hack from 1 have a side-effect of beeing faster - it reads ahead MAXBSIZE bytes instead of reading page by page. This is not easy to implement with VOP_GETPAGES(), at least not for me in this very moment. Reported by: Andrey V. Elsukov <bu7cher@yandex.ru> @118525 Reorganize the code to reduce diff. @118526 This code path is expected. It is simply when file is opened with O_FSYNC flag. Reported by: kris Reported by: Michal Suszko <dry@dry.pl>
* | | MFp4: We check for PRIV_VFS_MOUNT already in mount(2) syscall and we don'tpjd2007-04-181-4/+0
| | | | | | | | | | | | | | | want to do the check when snapshot is automatically mounted by an unprivileged user doing lookup on a snapshot directory.
* | | Simplify.pjd2007-04-171-4/+0
| | |
* | | Ignore hostid check for root-on-ZFS configurations. Making hostid availablepjd2007-04-171-1/+5
| | | | | | | | | | | | | | | | | | | | | before the root is mounted is tricky and having it in /boot/ is not really desire. Reported by: Zephiris <zephiris@gmail.com>
* | | Uncomment forgotten check. Without this check in-place, ZFS will panic onpjd2007-04-161-1/+1
| | | | | | | | | | | | | | | | | | | | | unload instead of returning EBUSY. This check tells if there are mounted ZFS file systems or not. We can't unload if there are mounted file systems. Reported by: Andrey V. Elsukov <bu7cher@yandex.ru>
* | | MFp4: Start DNLC after desiredvnodes variable is initialized.pjd2007-04-151-2/+2
| | | | | | | | | | | | | | | | | | | | | Before this change if zfs.ko was loaded by the loader, DNLC was automatically disabled. Reported by: Zephiris <zephiris@gmail.com>
* | | Fix RAID-Z resilvering.pjd2007-04-141-2/+16
| | | | | | | | | | | | Obtained from: OpenSolaris
* | | MFp4: Hmm, it seems to work now.pjd2007-04-141-8/+1
| | |
* | | MFp4: Use max_ncpus, which is used in other places in the code.pjd2007-04-141-1/+1
| | |
* | | MFp4: Add more debug, so we can see if zpool.cache was loaded or why itpjd2007-04-141-3/+11
| | | | | | | | | | | | wasn't loaded.
* | | MFp4: Allow to tune vfs.zfs.debug from loader.conf.pjd2007-04-141-0/+1
| | |
* | | MFp4: - Allow to tune number of spa_zio_* threads.pjd2007-04-141-7/+17
| | | | | | | | | | | | | | | | | | | | | - Reduce default number of spa_zio_* threads to N*spa_zio_issue plus N*spa_zio_intr threads per ZIO type, where N is the number of CPUs. - Put ZIO type number in thread's name.
* | | In member interface detach event handler, do not attempt to free statebms2007-04-141-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | which has already been freed by in_ifdetach(). With this cumulative change, the removal of a member interface will not cause a panic in pfsync(4). Requested by: yar PR: 86848
* | | Fix overflow, which was causing endless loops when 32bit machine had morepjd2007-04-132-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | than 2GB of RAM. This was because our physmem is long and 'physmem*PAGESIZE' can be negative for more than 2GB of memory. Reported by: Andrey V. Elsukov <bu7cher@yandex.ru> It is not yet tested by Andrey, so there can be other problems, but this was definiately a bug, so I'm committing a fix now.
* | | Fix vnodes starvation caused by DNLC (ZFS name cache):pjd2007-04-131-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | - Tune number of namecache entires better (based on desiredvnodes). - Handle vfs_lowvnodes event by releasing requested number of name cache entries, but no less than 5%. Reported by: simokawa
* | | MFp4: Synchronize with vendor (mostly 'zfs rename -r').pjd2007-04-126-20/+142
| | |
* | | MFp4: Bring back comments.pjd2007-04-122-179/+179
| | | | | | | | | | | | Requested by: jhb
* | | This commit was generated by cvs2svn to compensate for changes in r168616,ru2007-04-111-0/+2
|\ \ \ | | | | | | | | | | | | which included commits to RCS files with non-trunk default branches.
| * | | Unbreak world build.ru2007-04-111-0/+2
| | | |
* | | | This commit was generated by cvs2svn to compensate for changes in r168609,njl2007-04-111-0/+3
|\ \ \ \ | |/ / / | | | | | | | | which included commits to RCS files with non-trunk default branches.
| * | | Put some overly verbose prints under bootverbose. This is on the vendornjl2007-04-111-0/+3
| | | | | | | | | | | | | | | | branch but we need to work out a different interface with the vendor.
* | | | MFp4: Allow to set zfs_recover via vfs.zfs.recover from /boot/loader.conf.pjd2007-04-101-0/+4
| | | |
* | | | MFp4: Hide under '#ifdef _KERNEL' only what's really needed.pjd2007-04-101-6/+2
| | | |
* | | | Try to stabilize ZFS with regard to memory consumption:pjd2007-04-102-16/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Allow to shrink ARC down to 16MB (instead of 64MB). - Set arc_max to 1/2 of kmem_map by default. - Start freeing things earlier when low memory situation is detected. - Serialize execution of arc_lowmem(). I decided to setup minimum ZFS memory requirements to 512MB of RAM and 256MB of kmem_map size. If there is less RAM or kmem_map, a warning will be printed. World is cruel, be no better. In other words: modern file system requires modern hardware:) From ZFS administration guide: "Currently the minimum amount of memory recommended to install a Solaris system is 512 Mbytes. However, for good ZFS performance, at least one Gbyte or more of memory is recommended."
* | | | Reduce diff against vendor - we have now stronger check for "mutex alreadypjd2007-04-101-2/+2
| | | | | | | | | | | | | | | | initialized", so we can go back to kmem_alloc().
* | | | Remove unused #define.pjd2007-04-091-2/+0
| | | |
* | | | We don't have to wait for the root file system to be mounted anymore, now thatpjd2007-04-091-2/+0
| | | | | | | | | | | | | | | | kobj KPI supports operating on files loaded by the loader.
* | | | Drop the Giant lock before calling zfs_domount(), which is held whenpjd2007-04-091-1/+4
| | | | | | | | | | | | | | | | mounting root file system.
* | | | Move zpool.cache from /etc/zfs/ to /boot/zfs/, so we can keep it onpjd2007-04-081-1/+1
| | | | | | | | | | | | | | | | dedicated /boot/ file system and use ZFS for the root file system.
* | | | MFp4: Synchronize with recent OpenSolaris changes.pjd2007-04-088-12/+106
| | | |
* | | | - Use 'name=value' so it can be properly recognized by devd(8).pjd2007-04-081-32/+30
| | | | | | | | | | | | | | | | - Use only subclass as devd's type.
* | | | Take vnode pointer and hold it under znode lock, so we won't race withpjd2007-04-081-2/+3
| | | | | | | | | | | | | | | | | | | | zfs_reclaim(). This may or may not fix problem reported by kris, but it's definiatelly better that way.
* | | | Move atomic.S files to directories that better fit OpenSolaris directorypjd2007-04-072-10/+2
| | | | | | | | | | | | | | | | layout.
* | | | Fix libzpool compilation.pjd2007-04-071-0/+4
| | | | | | | | | | | | | | | | Reported by: des
* | | | Limit the number of system taskq threads to the number of CPUs.pjd2007-04-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | They are only used when there is a need for reducing namecache. Observed by: kris, csjp
* | | | Fix some type mismatches.des2007-04-071-3/+3
| | | | | | | | | | | | | | | | Reviewed by: pjd@
* | | | Allow to tune maximum and minimum memory used by ARC.pjd2007-04-071-5/+13
| | | |
* | | | Add missing mutex_init() which was causing assertion panic when on clonepjd2007-04-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | destruction. Reported by: kris
OpenPOWER on IntegriCloud