{"shas":[["1dcf613cf12733984966d14a644389994c91471c","023703db48913bda839940242b03b6cd02ebfb6f@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","Remove C constructs that are incompatible with C++ from various\nOpenSolaris and ZFS header files.  These changes are sufficient\nto allow a C++ program to use the libzfs library.\n\nNote: The majority of these files already included 'extern \"C\"'\n      declarations, so the intention of providing C++ compatibility\n      already existed even if it wasn't provided.\n\ncddl/compat/opensolaris/include/assert.h:\n\tWrap our compatibility assert implementation in\n\t'extern \"C\"'.  Since this is a compatibility header\n\tI matched the Solaris style of doing this explicitly\n\trather than rely on FreeBSD's __BEGIN/END_DECLS macro.\n\nsys/cddl/compat/opensolaris/sys/kstat.h:\nsys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h:\nsys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h:\nsys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h:\nsys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h:\nsys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h:\n\tRename parameters in function declarations that conflict\n\twith C++ keywords.  This was the solution preferred by\n\tmembers of the Illumos community.\n\nsys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h:\n\tIn C, nested structures are visible in the global namespace,\n\tbut in C++, they take on the namespace of the structure in\n\twhich they are contained.  Flatten nested structure\n\tdefinitions within struct zfs_cmd so these structures are\n\tvisible in the global namespace when compiled in both\n\tlanguages.\n\nSponsored by:\t Spectra Logic Corporation\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222950 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","gibbs"],["872a8fde1e7eb823f5e0cc19e4e41e6401f8511c","0b82158262a99f79cc9c8f65c9534ea360747dfc@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","- Fix races on detach handling of AAC_IFFLAGS_* mask\n- Fix races on setting AAC_AIFFLAGS_ALLOCFIBS\n- Remove some unused AAC_IFFLAGS_* bits.\n  Please note that the kthread still makes a difference between the\n  total mask and AAC_AIFFLAGS_ALLOCFIBS because more flags may be\n  added in the future to aifflags.\n\nSponsored by:\t\t\tSandvine Incorporated\nReported and reviewed by:\temaste\nMFC after:\t\t\t2 weeks\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222951 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","attilio"],["ed4db6e63be42b76e37fe73e2c156494eb6c9236","023703db48913bda839940242b03b6cd02ebfb6f@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","Include sys/xen in cscope tag file generation.\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222952 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","gibbs"],["766c0818781437561eff25d3d69eac4309f0bf37","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f"," - When printing bufs with show buf the lblkno is often more useful than\n   the blkno.  Print them both.\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222953 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","jeff"],["f48cee7b31849f5f38851f1716ca425afc558779","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f"," - If the fsync in ufs_direnter fails SUJ can later panic because we have\n   partially added a name.  Allow ufs_direnter() to continue in the\n   hopes that it is a transient error.  If it is not, the directory\n   is corrupted already from IO errors and writing this new block\n   is not likely to make things worse.\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222954 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","jeff"],["8f07ad142895a1956925969a86d20487bdad0d9d","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f"," - Add support for referencing quota structures without needing the inode\n   pointer for softupdates.\n\nSubmitted by:\tmckusick\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222955 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","jeff"],["a8e220018ba789deecb5d84a781b105552766fea","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f"," - Eliminate an incorrect include path from the mthca build.\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222956 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","jeff"],["269b9db42e9f0e5a5a2f614989ed6d79d153256d","c575a52645c4a162ba0549dae8e9ee41c16424f4@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","sh: Do parameter expansion on ENV before using it.\n\nThis is required by POSIX, and allows things like ENV=\\$HOME/.shrc.\n\nNote that tilde expansion is explicitly not performed.\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222957 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","jilles"],["73a94cd771088983091d7482fb941a74358c84cf","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","Implement fully asynchronous partial truncation with softupdates journaling\nto resolve errors which can cause corruption on recovery with the old\nsynchronous mechanism.\n\n - Append partial truncation freework structures to indirdeps while\n   truncation is proceeding.  These prevent new block pointers from\n   becoming valid until truncation completes and serialize truncations.\n - On completion of a partial truncate journal work waits for zeroed\n   pointers to hit indirects.\n - softdep_journal_freeblocks() handles last frag allocation and last\n   block zeroing.\n - vtruncbuf/ffs_page_remove moved into softdep_*_freeblocks() so it\n   is only implemented in one place.\n - Block allocation failure handling moved up one level so it does not\n   proceed with buf locks held.  This permits us to do more extensive\n   reclaims when filesystem space is exhausted.\n - softdep_sync_metadata() is broken into two parts, the first executes\n   once at the start of ffs_syncvnode() and flushes truncations and\n   inode dependencies.  The second is called on each locked buf.  This\n   eliminates excessive looping and rollbacks.\n - Improve the mechanism in process_worklist_item() that handles\n   acquiring vnode locks for handle_workitem_remove() so that it works\n   more generally and does not loop excessively over the same worklist\n   items on each call.\n - Don't corrupt directories by zeroing the tail in fsck.  This is only\n   done for regular files.\n - Push a fsync complete record for files that need it so the checker\n   knows a truncation in the journal is no longer valid.\n\nDiscussed with:\tmckusick, kib (ffs_pages_remove and ffs_truncate parts)\nTested by:\tpho\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@222958 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","jeff"]],"ref":"refs/heads/master","size":9,"head":"73a94cd771088983091d7482fb941a74358c84cf","push_id":33689087}