Mark Johnston
ebf1041fc8
hv_kvp: Fix some bugs and nits
...
- Use pending_mutex to synchronize several state flags. In particular,
ensure that two threads can't race to open the device file at the same
time.[1]
- Fix an off-by-one in hv_kvp_dev_daemon_read() that would result in a
one-byte OOB read if the caller supplied a large enough read buffer.[2]
- Change the device permissions to 0600: hv_kvp_dev_daemon_read()
returns an error until the owning process registers itself with a
write, so there's no sense in providing read-only access.
- Use bool instead of boolean_t.
- Don't return negative error numbers to userspace.
- Call seldrain() when closing the device.
Reported by: pixelpop [1][2]
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D60387
2026-10-20 15:30:38 +00:00
..
2026-10-17 20:49:19 +01:00
2026-06-24 18:26:33 +03:00
2026-10-13 19:43:56 +01:00
2026-04-23 13:05:53 -04:00
2026-04-23 18:41:19 +02:00
2026-06-14 10:45:52 +02:00
2026-09-18 16:09:32 -07:00
2026-10-09 23:07:02 +01:00
2026-10-13 22:21:26 +01:00
2026-09-08 01:19:36 +01:00
2026-09-24 22:12:32 -07:00
2026-09-06 20:47:44 +01:00
2026-05-18 14:52:23 -04:00
2026-05-24 18:32:04 -07:00
2026-09-23 14:43:13 +02:00
2026-09-18 15:53:44 -07:00
2026-04-01 00:29:46 -07:00
2026-06-14 13:56:59 -07:00
2026-04-04 09:11:10 +02:00
2026-10-13 14:28:51 +00:00
2026-07-20 15:37:34 -07:00
2026-07-20 15:37:34 -07:00
2026-09-18 15:56:01 -07:00
2026-08-17 07:11:52 -06:00
2026-09-26 10:30:42 +02:00
2026-07-29 12:12:41 -07:00
2026-09-18 14:53:39 -07:00
2026-10-01 14:09:51 -07:00
2026-09-26 10:30:42 +02:00
2026-09-26 10:30:42 +02:00
2026-09-26 10:30:42 +02:00
2026-04-23 13:05:54 -04:00
2026-09-30 14:41:12 +01:00
2026-10-05 16:22:44 -04:00
2026-06-20 21:16:37 +03:00
2026-07-16 18:20:41 +00:00
2026-09-18 16:10:30 -07:00
2026-09-16 22:16:42 -07:00
2026-09-21 19:43:31 -03:00
2026-06-14 10:50:59 +02:00
2026-04-16 18:35:45 -04:00
2026-09-13 12:37:39 +03:00
2026-09-26 10:30:42 +02:00
2026-05-28 13:09:52 +02:00
2026-10-14 16:00:47 +00:00
2026-09-26 10:30:42 +02:00
2026-08-17 07:53:07 +02:00
2026-09-26 10:30:42 +02:00
2026-10-20 05:24:13 +00:00
2026-09-30 12:36:18 +02:00
2026-10-13 10:21:45 -03:00
2026-07-13 16:40:42 -03:00
2026-10-20 15:30:38 +00:00
2026-09-18 15:45:38 -07:00
2026-09-28 13:48:10 +02:00
2026-09-17 12:08:43 +03:00
2026-06-01 14:02:52 +08:00
2026-08-17 07:54:10 +02:00
2026-10-05 10:01:54 -04:00
2026-08-27 09:00:21 +02:00
2026-10-19 16:15:09 +01:00
2026-05-18 14:52:23 -04:00
2026-10-08 00:08:22 -04:00
2026-06-08 21:26:07 -07:00
2026-07-29 14:42:19 -04:00
2026-04-04 09:11:11 +02:00
2026-04-23 13:05:55 -04:00
2026-06-24 15:30:55 -04:00
2026-06-08 21:26:07 -07:00
2026-10-17 14:32:51 -07:00
2026-10-18 17:34:46 -07:00
2026-10-07 21:16:44 -07:00
2026-09-18 15:40:17 -07:00
2026-09-28 10:09:04 -04:00
2026-06-08 21:26:07 -07:00
2026-09-18 16:01:09 -07:00
2026-04-23 13:05:54 -04:00
2026-04-30 21:53:47 +02:00
2026-10-13 19:36:17 +01:00
2026-05-05 13:33:39 -04:00
2026-09-18 15:59:12 -07:00
2026-10-07 20:09:41 +03:00
2026-08-07 14:12:17 -07:00
2026-04-30 21:53:47 +02:00
2026-09-17 21:14:41 +00:00
2026-06-15 09:43:57 +08:00
2026-09-18 14:53:39 -07:00
2026-09-12 14:57:24 -07:00
2026-08-27 13:33:10 +00:00
2026-09-15 13:49:47 +00:00
2026-09-04 17:44:07 +03:00
2026-10-18 13:29:41 +11:00
2026-10-19 00:22:51 -06:00
2026-10-08 11:24:45 -04:00
2026-09-23 14:43:13 +02:00
2026-08-07 15:14:53 -07:00
2026-09-26 10:30:42 +02:00
2026-09-30 11:04:08 -04:00
2026-08-17 07:52:09 +02:00
2026-05-12 17:54:40 +01:00
2026-10-16 16:34:20 +03:00
2026-09-12 14:59:00 -07:00
2026-06-24 16:17:01 +00:00
2026-06-14 10:50:02 +02:00
2026-09-26 10:30:42 +02:00
2026-09-14 11:11:34 -04:00
2026-04-10 15:12:11 -07:00
2026-05-18 10:04:11 -07:00
2026-09-18 16:13:43 -07:00
2026-09-18 16:08:28 -07:00
2026-09-18 16:05:10 -07:00
2026-09-18 16:06:33 -07:00
2026-07-20 15:37:34 -07:00
2026-10-20 05:24:13 +00:00
2026-07-19 11:49:14 -07:00
2026-09-26 10:30:42 +02:00
2026-10-13 18:31:50 +02:00
2026-07-19 11:44:36 -07:00
2026-04-30 09:29:19 -07:00
2026-09-11 22:27:06 -04:00
2026-08-21 11:27:55 -04:00
2026-09-23 14:43:13 +02:00
2026-10-14 16:00:47 +00:00
2026-04-24 16:04:43 -06:00
2026-10-20 13:47:20 +02:00
2026-09-26 10:30:42 +02:00
2026-09-12 14:57:24 -07:00
2026-09-26 10:30:42 +02:00
2026-05-13 12:55:48 +01:00
2026-10-09 18:32:34 +01:00
2026-04-23 13:05:54 -04:00
2026-09-27 13:20:34 -03:00
2026-06-15 10:32:02 -04:00
2026-10-19 16:15:09 +01:00
2026-09-15 01:44:33 +00:00
2026-10-12 18:59:44 +02:00
2026-09-14 08:57:36 +02:00
2026-10-08 10:44:06 +02:00
2026-03-27 22:03:35 -06:00
2026-08-08 00:22:48 -07:00
2026-09-11 13:44:07 -07:00
2026-09-18 16:11:48 -07:00
2026-10-03 14:26:14 +03:00
2026-06-10 10:04:40 -04:00
2026-10-20 09:34:03 -05:00
2026-06-08 21:26:07 -07:00
2026-06-16 07:54:55 -07:00
2026-04-23 13:05:54 -04:00
2026-09-14 11:11:34 -04:00