summaryrefslogtreecommitdiffstats
path: root/sys/contrib
Commit message (Collapse)AuthorAgeFilesLines
* 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
* | Please welcome ZFS - The last word in file systems.pjd2007-04-06191-0/+88133
| | | | | | | | | | | | | | | | | | | | | | ZFS file system was ported from OpenSolaris operating system. The code in under CDDL license. I'd like to thank all SUN developers that created this great piece of software. Supported by: Wheel LTD (http://www.wheel.pl/) Supported by: The FreeBSD Foundation (http://www.freebsdfoundation.org/) Supported by: Sentex (http://www.sentex.net/)
* | Add an interface for drivers to be notified of changes to CPU frequency.njl2007-03-261-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cpufreq_pre_change is called before the change, giving each driver a chance to revoke the change. cpufreq_post_change provides the results of the change (success or failure). cpufreq_levels_changed gives the unit number of the cpufreq device whose number of available levels has changed. Hook in all the drivers I could find that needed it. * TSC: update TSC frequency value. When the available levels change, take the highest possible level and notify the timecounter set_cputicker() of that freq. This gets rid of the "calcru: runtime went backwards" messages. * identcpu: updates the sysctl hw.clockrate value * Profiling: if profiling is active when the clock changes, let the user know the results may be inaccurate. Reviewed by: bde, phk MFC after: 1 month
* | Merge from vendor branch to fix tinderbox breakage.jkim2007-03-221-2/+4
| |
* | This commit was generated by cvs2svn to compensate for changes in r167817,jkim2007-03-221-1/+2
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Fix tinderbox build breakage.jkim2007-03-222-3/+6
| | | | | | | | | | Note that it is committed on the vendor branch because it will be submitted to the vendor.
| * Remove files that are no longer needed or removed by vendor.jkim2007-03-225-3071/+0
| |
* | Update to reflect import of ACPI-CA 20070320.jkim2007-03-221-7/+6
| |
* | Resolve conflicts from import of Intel ACPI-CA 20070320.jkim2007-03-223-103/+143
| |
* | Resolve conflicts of unchanged files that are off the vendor branch.jkim2007-03-2221-1056/+1410
| |
* | Remove files that removed on the vendor branch.jkim2007-03-222-1549/+0
| |
* | This commit was generated by cvs2svn to compensate for changes in r167807,jkim2007-03-223-1522/+0
| | | | | | | | which included commits to RCS files with non-trunk default branches.
* | This commit was generated by cvs2svn to compensate for changes in r167805,jkim2007-03-224-5/+21
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
OpenPOWER on IntegriCloud