OpenBSD CVS

CVS log for src/sys/dev/hotplug.c


[BACK] Up to [local] / src / sys / dev

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.24 / (download) - annotate - [select for diffs], Fri Sep 22 22:12:32 2023 UTC (8 months, 2 weeks ago) by mvs
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, HEAD
Changes since 1.23: +69 -32 lines
Diff to previous 1.23 (colored)

Introduce `hotplug_mtx' mutex(9) and make `hotplugread_filtops' MP safe.
Use this mutex(9) to protect `evqueue_head', `evqueue_tail' and
`evqueue_count'.

ok bluhm

Revision 1.23 / (download) - annotate - [select for diffs], Fri Sep 8 20:00:27 2023 UTC (9 months ago) by mvs
Branch: MAIN
Changes since 1.22: +2 -1 lines
Diff to previous 1.22 (colored)

Remove the remnants of the leftover selinfo from vnode(9) layer. Just
mechanical 'selinfo' to 'klist' replacement in 'vnode' structure because
knote(9) API is already used.

<sys/selinfo.h> headers added where is was required.

ok bluhm

Revision 1.22 / (download) - annotate - [select for diffs], Sat Jul 2 08:50:41 2022 UTC (23 months, 1 week ago) by visa
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.21: +1 -17 lines
Diff to previous 1.21 (colored)

Remove unused device poll functions.

Also remove unneeded includes of <sys/poll.h> and <sys/select.h>.

Some addenda from jsg@.

OK miod@ mpi@

Revision 1.21 / (download) - annotate - [select for diffs], Fri Dec 25 12:59:52 2020 UTC (3 years, 5 months ago) by visa
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1, OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.20: +3 -3 lines
Diff to previous 1.20 (colored)

Refactor klist insertion and removal

Rename klist_{insert,remove}() to klist_{insert,remove}_locked().
These functions assume that the caller has locked the klist. The current
state of locking remains intact because the kernel lock is still used
with all klists.

Add new functions klist_insert() and klist_remove() that lock the klist
internally. This allows some code simplification.

OK mpi@

Revision 1.20 / (download) - annotate - [select for diffs], Tue Apr 7 13:27:51 2020 UTC (4 years, 2 months ago) by visa
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored)

Abstract the head of knote lists. This allows extending the lists,
for example, with locking assertions.

OK mpi@, anton@

Revision 1.19 / (download) - annotate - [select for diffs], Thu Feb 20 16:56:52 2020 UTC (4 years, 3 months ago) by visa
Branch: MAIN
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)

Replace field f_isfd with field f_flags in struct filterops to allow
adding more filter properties without cluttering the struct.

OK mpi@, anton@

Revision 1.18 / (download) - annotate - [select for diffs], Tue Dec 31 13:48:31 2019 UTC (4 years, 5 months ago) by visa
Branch: MAIN
Changes since 1.17: +7 -3 lines
Diff to previous 1.17 (colored)

Use C99 designated initializers with struct filterops. In addition,
make the structs const so that the data are put in .rodata.

OK mpi@, deraadt@, anton@, bluhm@

Revision 1.17 / (download) - annotate - [select for diffs], Tue Dec 31 10:05:32 2019 UTC (4 years, 5 months ago) by mpi
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored)

Convert infinite sleeps to {m,t}sleep_nsec(9).

ok kn@

Revision 1.16 / (download) - annotate - [select for diffs], Tue Jun 7 01:31:54 2016 UTC (8 years ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3, OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1, OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored)

per trending style, add continue to empty loops.
ok mglocker

Revision 1.15 / (download) - annotate - [select for diffs], Sat Mar 14 03:38:46 2015 UTC (9 years, 3 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9, OPENBSD_5_8_BASE, OPENBSD_5_8
Changes since 1.14: +1 -2 lines
Diff to previous 1.14 (colored)

Remove some includes include-what-you-use claims don't
have any direct symbols used.  Tested for indirect use by compiling
amd64/i386/sparc64 kernels.

ok tedu@ deraadt@

Revision 1.14 / (download) - annotate - [select for diffs], Tue Feb 10 21:58:16 2015 UTC (9 years, 4 months ago) by miod
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

Switch uiomovei(..., sizeof whatever, ...) to uiomove().

Revision 1.13 / (download) - annotate - [select for diffs], Tue Feb 10 21:56:09 2015 UTC (9 years, 4 months ago) by miod
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

First step towards making uiomove() take a size_t size argument:
- rename uiomove() to uiomovei() and update all its users.
- introduce uiomove(), which is similar to uiomovei() but with a size_t.
- rewrite uiomovei() as an uiomove() wrapper.
ok kettenis@

Revision 1.12 / (download) - annotate - [select for diffs], Sat Jul 2 22:20:07 2011 UTC (12 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5, OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

kqueue attach functions should return an errno or 0, not a plain 1. Fix
the obvious cases to return EINVAL and ENXIO.

ok tedu deraadt

Revision 1.11 / (download) - annotate - [select for diffs], Wed Dec 15 03:34:33 2010 UTC (13 years, 5 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9
Changes since 1.10: +2 -15 lines
Diff to previous 1.10 (colored)

revert the malloc change, as it meant dropping events before the device is
opened.  keep the array expansion.  ok deraadt

Revision 1.10 / (download) - annotate - [select for diffs], Thu Dec 2 04:12:35 2010 UTC (13 years, 6 months ago) by tedu
Branch: MAIN
Changes since 1.9: +17 -4 lines
Diff to previous 1.9 (colored)

make hotplug queue dynamic, allowing us to increase size without waste.
ok deraadt kettenis miod

Revision 1.9 / (download) - annotate - [select for diffs], Mon Nov 9 17:53:39 2009 UTC (14 years, 7 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE, OPENBSD_4_8, OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.8: +1 -2 lines
Diff to previous 1.8 (colored)

Every selwakeup() should have a matching KNOTE() (even if kqueue isn't
supported it doesn't do any harm), so put the KNOTE() in selwakeup() itself and
remove it from any occurences where both are used, except one for kqueue itself
and one in sys_pipe.c (where the selwakeup is under a PIPE_SEL flag).

Based on a diff from tedu.

ok deraadt

Revision 1.8 / (download) - annotate - [select for diffs], Sun May 28 16:43:49 2006 UTC (18 years ago) by mk
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4, OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2, OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.7: +3 -5 lines
Diff to previous 1.7 (colored)

Remove device id from hotplug events.

ok henning

Revision 1.7 / (download) - annotate - [select for diffs], Sun May 28 01:33:50 2006 UTC (18 years ago) by mk
Branch: MAIN
Changes since 1.6: +5 -3 lines
Diff to previous 1.6 (colored)

Include device id in hotplug events.  This will be used by ntpd to check
sensors on attach/detach.  hotplugd changes following in a minute.

ok henning.

Revision 1.6 / (download) - annotate - [select for diffs], Fri Oct 8 18:57:38 2004 UTC (19 years, 8 months ago) by drahn
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8, OPENBSD_3_7_BASE, OPENBSD_3_7
Changes since 1.5: +5 -2 lines
Diff to previous 1.5 (colored)

If the hotplug queue is full, bump the tail pointer in the circular buffer.
ok grange@

Revision 1.5 / (download) - annotate - [select for diffs], Wed Sep 15 18:58:59 2004 UTC (19 years, 8 months ago) by grange
Branch: MAIN
Changes since 1.4: +2 -5 lines
Diff to previous 1.4 (colored)

Return the ability to queue events before hotplugd started.

ok deraadt@

Revision 1.4 / (download) - annotate - [select for diffs], Fri Jul 30 05:36:32 2004 UTC (19 years, 10 months ago) by miod
Branch: MAIN
CVS Tags: OPENBSD_3_6_BASE, OPENBSD_3_6
Changes since 1.3: +2 -2 lines
Diff to previous 1.3 (colored)

Correctly drain event queue on close. Fixes PR #3874

Revision 1.3 / (download) - annotate - [select for diffs], Mon Jul 5 19:40:38 2004 UTC (19 years, 11 months ago) by deraadt
Branch: MAIN
Changes since 1.2: +7 -14 lines
Diff to previous 1.2 (colored)

clean & knf

Revision 1.2 / (download) - annotate - [select for diffs], Mon Jul 5 19:39:06 2004 UTC (19 years, 11 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +8 -1 lines
Diff to previous 1.1 (colored)

do not queue events when no daemon running.  flush all events on last close.
ok tedu

Revision 1.1.2.1 / (download) - annotate - [select for diffs], Sat Jun 5 23:12:36 2004 UTC (20 years ago) by niklas
Branch: SMP
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored) next main 1.2 (colored)

Merge with the trunk

Revision 1.1 / (download) - annotate - [select for diffs], Sun May 30 08:11:26 2004 UTC (20 years ago) by grange
Branch: MAIN
CVS Tags: SMP_SYNC_B, SMP_SYNC_A
Branch point for: SMP

Devices hot plugging support.
The hotplug pseudo-device passes device attachment and detachment events
to userland.  When a device attaches or detaches, the corresponding event
is queued.  The events can then be obtained from the queue through the
read(2) call on the /dev/hotplug device file. Each event consists of
event type (attach/detach), device class (DV_*) and device name (sd1 e.g.).

We have hotplug pseudo-device on alpha, amd64, i386, macppc and sparc64.
Since it was tested only on i386 other archs has it commented out
in GENERIC until tested.

The idea liked peter@ tedu@ drahn@ millert@ marco@ henning@.
Ok deraadt@.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.