| Age | Commit message (Collapse) | Author |
|
sys/dev/sysmon/sysmon_envsys.c: revision 1.145
Don't queue sysmon refresh until the rndsource is attached.
Using the rndsource, as refreshing the sensors will do, is not
allowed until _after_ rnd_source_attach.
XXX pullup-7
XXX pullup-8
XXX pullup-9
|
|
sys/dev/sysmon/sysmon_power.c: revision 1.61
Fix info leak, not all of 'pev' is initialized.
|
|
sys/dev/sysmon/sysmon.c: revision 1.30
Module class of sysmon_envsys, sysmon_wdog and sysmon_power is
MODULE_CLASS_DRIVER, not MODULE_CLASS_MISC.
Fix that invoking envsys without sysmon_envsys kernel module failes with:
WARNING: module error: incompatible module class for `sysmon_envsys' (1 != 3)
|
|
It really doesn't make that much difference to the code, but the output
from modstat(8) is different! (With an empty string in the MODULE() macro
modstat reports an empty string, but with a NULL in the macro, modstat
prints a '-' just like it does for other "empty" fields.)
|
|
The driver is modular, so its modcmd(MOULE_CMD_INIT) always gets called
whether or not the driver is built-in to the kernel. The modcmd init
code always calls swwdogattach() which creates the workqueue. Therefore
there's no need to also create it in swwdog_attach() (used to attach a
device instance).
|
|
instead of TAILQ_FOREACH.
sysmon_envsys_sensor_detach() removes the sensor from sme_sensors_list.
Hence using TAILQ_FOREACH is not safe.
Suggested by thorpej and jmcneill. Thanks!
|
|
discussed on irc.
NFCI intended.
Ride the earlier kernel bump - it;s getting crowded.
|
|
|
|
|
|
|
|
|
|
|
|
Mostly done with spatch with touchups for indentation
@@
expression a;
identifier b,c,d;
identifier p;
@@
const struct filterops p =
- { a, b, c, d
+ {
+ .f_isfd = a,
+ .f_attach = b,
+ .f_detach = c,
+ .f_event = d,
};
|
|
queries or modifications of the state with the sme_mtx mutex.
Detach the rndsrc before re-attaching it (with potentially new values).
Clean up some lock-ordering issues.
And a couple of KNF issues for good measure!
Should address PR kern/52533
XXX Pullup-8 along with the previous fixes from msaitoh@
XXX http://mail-index.netbsd.org/source-changes/2017/09/06/msg088028.html
~
~
|
|
use sysmon_envsys sleep waiting at "rndsrc" when "drvctl -d".
Don't call rnd_detach_source() in sme_remove_event() which is called
from sme_event_unregister_all(). Instead, call rnd_detach_source() in
sysmon_envsys_sensor_detach() and call sysmon_envsys_sensor_detach()
before sme_event_unregister_sensor(). Each sensor(envsys_data) has each
rnd_src, but some sme_events point to the same rnd_src in a sensor.
Calling rnd_detach_souce() twice with the same rnd_src brokes a reference
count in rnd_src. OK'd by pgoyette@.
|
|
kmem_alloc() with KM_SLEEP
kmem_zalloc() with KM_SLEEP
percpu_alloc()
pserialize_create()
psref_class_create()
all of these paths include an assertion that the allocation has not failed,
so callers should not assert that again.
|
|
initialized before we configure/initialize any devices that interact
with them.
Thanks, marty!
|
|
multiple sensors.
|
|
https://mail-index.netbsd.org/tech-kern/2015/10/14/msg019511.html
don't sleep on sme->sme_mtx in the callout but use mutex_tryenter()
and just reschedule the callout if we can't get the mutex now.
This fixes a deadlock which can happen if the backed wants to
sleep with timeout (e.g. cv_timedwait()) as the backed is called with
sme->sme_mtx held.
This is a stopgap measure for netbsd-7; sysmon should be changed to not
sleep (or call a backend which will sleep) with mutexes held.
|
|
|
|
one occurred.
|
|
n ot just that one or the other is non-NULL!
|
|
|
|
code is only called once for built-in variants of the module.
|
|
Thanks, christos!
|
|
While here, remove some parens around a return value.
|
|
of overwriting with ENODEV.
Thanks, christos!
|
|
open routine. Just return an error.
Hopefully this will fix the recently reported issues with atf tests
running on xen guest.
|
|
Remove auto_configure(9) goop from sysmon device. It does make things
a bit cleaner, and also reduces source code by about 10%.
Tested via QEMU with no obvious side-effects.
|
|
be called from sysmon_envsys_register() early.
|
|
|
|
|
|
|
|
|
|
|
|
can properly suspend the system.
Thanks, mrg, for pointing this out.
|
|
|
|
|
|
|
|
|
|
sensor events to userland).
|
|
already included by config. So, for built-in sysmon module we don't
need to add the cdevsw to the table.
|
|
|
|
|
|
sysmon_task_queue_fini() function to have a non-void type.
|
|
|
|
sysmon components.
|
|
|
|
|
|
|