03a64974 | 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 ...
|
e6823fc6 | 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 ...
|
7894d8e6 | 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 ...
|
3b527407 | 07-Aug-2015 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: include current txg in mount/umount events
(cherry picked from commit 3ade291b7e5d4c5f1f81cb224a1962486c29dbc6) |
e3455c18 | 24-Jun-2015 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: new ioctl() to query ABI version
A new ioctl() has been added to query the module for it's version numbers. These are supposed to give an indication of which behaviour and which feature set ca
zev: new ioctl() to query ABI version
A new ioctl() has been added to query the module for it's version numbers. These are supposed to give an indication of which behaviour and which feature set can be expected to work.
(cherry picked from commit f63c8e0930c25065bb397bcbbe45afb4f170fc96)
show more ...
|
8aa47a6b | 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 ...
|
94875cb8 | 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 ...
|
c99a1a25 | 05-Aug-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: option to create empty queues
New zev queues where filled with as many events as would fit from the global event backlog. Now a flag can be set to skip this step. The new queue will then be em
zev: option to create empty queues
New zev queues where filled with as many events as would fit from the global event backlog. Now a flag can be set to skip this step. The new queue will then be empty upon creation and will only receive events newer than the queue itself.
(cherry picked from commit 6970b7d9a5856021f673d67e8ba9f061c20eac54)
show more ...
|
2eabeab5 | 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 ...
|
12119a7e | 03-Jun-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: add txg to applicable event type records
(cherry picked from commit be5f9b3c721e52d475c3d7009982992c01c9140e) |
42110aac | 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 ...
|
205ed6bf | 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 ...
|
93297ba3 | 13-May-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: include fs root inode info in mount events
(cherry picked from commit 5beaf3ad100304461dfab72835f386d63abe8568) |
6a6a51ee | 08-May-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: changes for #1891 review (multiplayer)
Review feedback addressed in this commit:
- remove avl, replace with array - read() can block (but can be interrupted by signals) - style changes - q
zev: changes for #1891 review (multiplayer)
Review feedback addressed in this commit:
- remove avl, replace with array - read() can block (but can be interrupted by signals) - style changes - queue threshold can be set to 0 bytes (no delay) - FIND_QUEUE macro replaced by function - new mutex to avoid races when queues are full - zevadm can be told to poll events from a specified queue - zevadm can create blocking queues
additional changes:
- mark events are delivered without delay
(cherry picked from commit e4ea145c5d454bda934f8af75eec9ea17f2489c0)
show more ...
|
add9520f | 19-Mar-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: multi-queue support
(cherry picked from commit bc16f3206d5f60ea7a18a972c3a52afb85102b71) |
57691ffe | 05-Feb-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: missing #include added
(cherry picked from commit 1941fba0f35100f34fd092f453b551b61f8ab615) |
97dcf88d | 05-Feb-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: pass removed file's inode info into userland
(cherry picked from commit b23df4380880bf151b06786c591579e8a7abafc7) |
35d4e8dd | 27-Jan-2014 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev: new ioctl (get_gen) and various fixes
(cherry picked from commit 7a84701fb0e8e59f59d30523c82b171d7e510273) |
19b08257 | 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 ...
|
da4b4c3d | 14-Oct-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
code cosmetics
(cherry picked from commit e0400b4151e756750a8fdff8bd4be5aa41fcbf63) |
808a670a | 11-Oct-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
allow 32-bit ioctl() calls in 64-bit kernels: all structs are now padded and aligned
(cherry picked from commit aadc9bd992b088de347df644453365dff6a4b4d1) |
888fea18 | 10-Oct-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
marks can be queued in-between events.
(cherry picked from commit d8d328ed3087e5c59b7f42951ab9dff657ba162a) |
149d0aff | 10-Oct-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
struct padding fixed to work with 32 and 64 bit userspace receivers, plus two other small fixes.
(cherry picked from commit 3c715018da3061d1e7dd083ab1699d835073d6ce) |
d979f56c | 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) |
fec460f8 | 24-Jul-2013 |
Andreas Jaekel <jaekel@strato-rz.de> |
zev throttles poll wakeups by collectiong a tuneable amount of data first.
(cherry picked from commit 8816c249f60329ada34955a3ea986d0e95e762d8) |