diff options
Diffstat (limited to 'usr/src/uts/common/sys/strsubr.h')
| -rw-r--r-- | usr/src/uts/common/sys/strsubr.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/usr/src/uts/common/sys/strsubr.h b/usr/src/uts/common/sys/strsubr.h index ce86badfc1..306a2f6b29 100644 --- a/usr/src/uts/common/sys/strsubr.h +++ b/usr/src/uts/common/sys/strsubr.h @@ -27,6 +27,10 @@ * Use is subject to license terms. */ +/* + * Copyright 2019 OmniOS Community Edition (OmniOSce) Association. + */ + #ifndef _SYS_STRSUBR_H #define _SYS_STRSUBR_H @@ -242,6 +246,17 @@ typedef struct stdata { uint_t sd_copyflag; /* copy-related flags */ zoneid_t sd_anchorzone; /* Allow removal from same zone only */ struct msgb *sd_cmdblk; /* reply from _I_CMD */ + + /* + * When a STREAMS device is cloned, the sd_vnode element of this + * structure is replaced by a pointer to a common vnode shared across + * all streams that are using the device. In this case, it is no longer + * possible to get from the stream head back to the original vnode via + * sd_vnode. Therefore, when such a device is cloned, the parent vnode - + * i.e. that which was created during the device clone in spec_clone() + * - is kept in sd_pvnode. + */ + struct vnode *sd_pvnode; } stdata_t; /* |
