modules: bzero the modspecific_t
Per https://reviews.llvm.org/D68115, only the first field is
zero-initialized, meanwhile other fields are undef.
The pattern can be observed on clang as well, that when
-ftrivial-auto-var-init=pattern is specified 0xaa is filled for
non-active fields, otherwise they are zero-initialized.
Technically both are acceptable when using clang. However it
would be good to simply bzero the modspecific_t in such case to
be strict to the standard.
MFC with: 2cab2d43b8
MFC after: 1 day
Sponsored by: Juniper Networks, Inc.
Reviewed by: delphij
Differential Revision: https://reviews.freebsd.org/D40830
This commit is contained in:
@@ -173,9 +173,10 @@ kern_syscall_module_handler(struct sysent *sysents, struct module *mod,
|
||||
int what, void *arg)
|
||||
{
|
||||
struct syscall_module_data *data = arg;
|
||||
modspecific_t ms = { 0 };
|
||||
modspecific_t ms;
|
||||
int error;
|
||||
|
||||
bzero(&ms, sizeof(ms));
|
||||
switch (what) {
|
||||
case MOD_LOAD:
|
||||
error = kern_syscall_register(sysents, data->offset,
|
||||
|
||||
Reference in New Issue
Block a user