#
b59bb262 |
| 23-Feb-2021 |
Jan Schlien <illumos.874@jan-o-sch.net> |
zev: ignore remount events
Avoid deadlock by (shortened) domount -> zfs_mount -> zev_zfs_mount_cb -> vnodetopath -> vn_under -> vfs_rlock_wait.
For zev purposes we can safely ignore remount events.
zev: ignore remount events
Avoid deadlock by (shortened) domount -> zfs_mount -> zev_zfs_mount_cb -> vnodetopath -> vn_under -> vfs_rlock_wait.
For zev purposes we can safely ignore remount events.
(cherry picked from commit a93dd5c0e4d42a2a3239b2f146cdfdafba5ae83f)
show more ...
|
#
df8caf2d |
| 23-Nov-2015 |
Simon Klinkert <klinkert@webgods.de> |
further lint fixes
(cherry picked from commit 4ab1323af43e16c3c75773a928cdb4b8a38b6621)
|
#
d3b66d30 |
| 22-Sep-2015 |
Simon Klinkert <klinkert@webgods.de> |
zev: include current txg in mount/umount events
The origin code was broken because it used dmu_tx_abort instead of dmu_tx_commit. Original commit: 3ade291b7e5d4c5f1
Conflicts:
usr/src/common/zev/
zev: include current txg in mount/umount events
The origin code was broken because it used dmu_tx_abort instead of dmu_tx_commit. Original commit: 3ade291b7e5d4c5f1
Conflicts:
usr/src/common/zev/zev.h usr/src/uts/common/sys/fs/zev.h
(cherry picked from commit e1c612e3f2af15ccdb7fdcfefe9c16f71dd315d1)
show more ...
|
#
5d3744fd |
| 17-Sep-2015 |
Simon Klinkert <klinkert@webgods.de> |
Revert "zev: include current txg in mount/umount events"
This reverts commit 3ade291b7e5d4c5f1f81cb224a1962486c29dbc6.
Commit breaks the OS. zpool hangs due to hundreds of uncommited txg's
Conflic
Revert "zev: include current txg in mount/umount events"
This reverts commit 3ade291b7e5d4c5f1f81cb224a1962486c29dbc6.
Commit breaks the OS. zpool hangs due to hundreds of uncommited txg's
Conflicts:
usr/src/common/zev/zev.h usr/src/uts/common/sys/fs/zev.h
(cherry picked from commit 224f6666f744195596ef7492186a18b37f8c55e1)
show more ...
|
#
564e7d37 |
| 10-Aug-2015 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: workaround: mount cb bails for failed mount
The zev mount callback got called for failed mounts, which then crashed the system when the callback tried to access zfsvfs data. A fix in zfs_mount(
zev: workaround: mount cb bails for failed mount
The zev mount callback got called for failed mounts, which then crashed the system when the callback tried to access zfsvfs data. A fix in zfs_mount() was written, but since updating the zfs module is painful we also work around this problem from inside the callback, so that only the zev module needs to be updated.
Seperate commit so it can be backported to earlier titanic releases.
(cherry picked from commit 06a9f6b8e3d58ecf30294ed84afa5b700aed283d)
show more ...
|
#
94bf38f1 |
| 07-Aug-2015 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: include current txg in mount/umount events
(cherry picked from commit 3ade291b7e5d4c5f1f81cb224a1962486c29dbc6)
|
#
bdbd253b |
| 11-Feb-2015 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: filter events outside of HiDrive spaces
To reduce load on the beaver daemon we do not report events that are not from a production HiDrive filesystem containing customer data, recognized by the
zev: filter events outside of HiDrive spaces
To reduce load on the beaver daemon we do not report events that are not from a production HiDrive filesystem containing customer data, recognized by the string "_root" anyhere in the dataset name.
(cherry picked from commit f13bc8390f84fee6da73e746d0d788b9fa771e3d)
show more ...
|
#
773b6339 |
| 05-Feb-2015 |
Simon Klinkert <klinkert@webgods.de> |
zev: dsl_dataset_is_snapshot() -> dsl_dataset->ds_is_snapshot
(cherry picked from commit 901d4aabbe67d77d9da504b6e4b93bff07e8e451)
|
#
16a2f000 |
| 04-Feb-2015 |
Simon Klinkert <klinkert@webgods.de> |
zev fix: ds_phys was replaced by dsl_dataset_phys().
replaced by commit 8d62b2231107 commit msg: 5314 Remove "dbuf phys" db->db_data pointer aliases in ZFS
(cherry picked from commit 0358d6fdc001dc
zev fix: ds_phys was replaced by dsl_dataset_phys().
replaced by commit 8d62b2231107 commit msg: 5314 Remove "dbuf phys" db->db_data pointer aliases in ZFS
(cherry picked from commit 0358d6fdc001dc06b41229927fa1b0b0910edbff)
show more ...
|
#
f8e3fee2 |
| 25-Nov-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: added inode info of clobbered files (rename)
When a file is renamed, another file might previously have had the new name and will thus be clobbered. In this case, the inode information of the
zev: added inode info of clobbered files (rename)
When a file is renamed, another file might previously have had the new name and will thus be clobbered. In this case, the inode information of the clobbered file will be added to the zev rename event. Note that the file might still have other names.
(cherry picked from commit 9ed9bfe91df7eb8d10c125f9f04d3ec82010930a)
show more ...
|
#
443f0cd2 |
| 08-Sep-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: umount events include info of covered inode
A ZFS umount will now be reported including information of the inode that the filesystem was mounted over. (the mountpoint that will now become visib
zev: umount events include info of covered inode
A ZFS umount will now be reported including information of the inode that the filesystem was mounted over. (the mountpoint that will now become visible again)
(cherry picked from commit 808e6c04e8d170f4444fe287cf08403bdf1a757c)
show more ...
|
#
1ca5a13b |
| 22-Jul-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: create and symlink events now inlude checksum
When a symlink or another new file is created, the resulting zev events now include a signature for the new file.
Symlinks are treated like files
zev: create and symlink events now inlude checksum
When a symlink or another new file is created, the resulting zev events now include a signature for the new file.
Symlinks are treated like files that contain the "link" part as text. Block and character devices have a signature based on the format string "%c%d,%d", with 'b'/'c', getmajor() and getminor() as values. All other file types will result in an all-zero signature.
Hardlinks create a new directory entry, but no new inode. Therefore, rdlink events still do not contain a signature.
(cherry picked from commit d27baf235074c236575a6c7ec7d3fe89a7d8af6e)
show more ...
|
#
e206ace3 |
| 03-Jun-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: add txg to applicable event type records
(cherry picked from commit be5f9b3c721e52d475c3d7009982992c01c9140e)
|
#
b9710123 |
| 22-May-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: ioctl() to get signatures for an open file
There's a new ioctl() ZEV_IOC_GET_FILE_SIGNATURES to get beaver signatures for a data range in an open file. The provided buffer has to be large enou
zev: ioctl() to get signatures for an open file
There's a new ioctl() ZEV_IOC_GET_FILE_SIGNATURES to get beaver signatures for a data range in an open file. The provided buffer has to be large enough to hold the parameters and the signatures.
zevadm can display a file's signatures using 'zevadm -c <filename>'
(cherry picked from commit 6b4c2eb9a413da85091774d0095ad61946ae043d)
show more ...
|
#
5e286361 |
| 08-May-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: calculate beaver-compatible checksums of changes
Ranges required to calculate the checksums will be range locked before the zev callbacks are called. Checksums are calculated in the zev module
zev: calculate beaver-compatible checksums of changes
Ranges required to calculate the checksums will be range locked before the zev callbacks are called. Checksums are calculated in the zev module and reported to userland. Checksums of all-zeroes blocks are omitted. Userland is expected to infer that the block must have bee all-zeroes.
An internal cache is implemented to avoid re-reading the same data over and over again.
(cherry picked from commit d8e62bab61474da73f26dc58b26d937c9cc17397)
show more ...
|
#
f66561e7 |
| 13-May-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: include fs root inode info in mount events
(cherry picked from commit 5beaf3ad100304461dfab72835f386d63abe8568)
|
#
e9a5e479 |
| 19-Mar-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: multi-queue support
(cherry picked from commit bc16f3206d5f60ea7a18a972c3a52afb85102b71)
|
#
6db5d4ec |
| 05-Feb-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: pass removed file's inode info into userland
(cherry picked from commit b23df4380880bf151b06786c591579e8a7abafc7)
|
#
c035b1e8 |
| 27-Jan-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: new ioctl (get_gen) and various fixes
(cherry picked from commit 7a84701fb0e8e59f59d30523c82b171d7e510273)
|
#
10874358 |
| 14-Jan-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: pass xattr flag into userland, fix umount bug
zev events now have a flag in inode structures indicating whether the inode is part of some file's extended attributes. We use this to ignore such
zev: pass xattr flag into userland, fix umount bug
zev events now have a flag in inode structures indicating whether the inode is part of some file's extended attributes. We use this to ignore such events.
Also, there was a bug in umount: the dsl dataset was freed before it was used by the zev callback. This wasn't noted before because it was usually still okay. On debug kernels, the freed space is cleared, and so it was immediatly visible.
(cherry picked from commit 5be8959620e9c9a4179a80521f9be872ab79b065)
show more ...
|
#
aea44f72 |
| 19-Nov-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: fix lint and build warnings
(cherry picked from commit 74cdfce6dd066682a1724b52826d50255f2af3dd)
|
#
51cd2374 |
| 18-Nov-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: skip mount/umount events for snapshots.
(cherry picked from commit 35f5557688c45a343edf7bae121e177a472ca22b)
|
#
68a46c64 |
| 02-Oct-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
pass multiple events in one read() call; new convenience typedefs in header
(cherry picked from commit 4a804719ddd0b229ab53217aa4c7a44f7466165b)
|
#
63aba447 |
| 30-Sep-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
switch protocol from packed nvlists to structs, for expected performance reasons.
(cherry picked from commit e7801d00ec0706117ba51159f125a1ac6695cb59)
|
#
9193e9c2 |
| 24-Sep-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
pass additional information for each inode, changed protocoll to native encoded nvlist records.
(cherry picked from commit d41256dd2f25a2cf8d8d1a4dbb550c0d47f9858a)
|