CVS log for src/sys/dev/dkwedge/dk.c
Up to [cvs.NetBSD.org] / src / sys / dev / dkwedge
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Revision 1.124.4.1: download - view: text, markup, annotated - select for diffs
Tue Aug 1 14:49:06 2023 UTC (17 months, 3 weeks ago) by martin
Branches: netbsd-10
CVS tags: netbsd-10-1-RELEASE,
netbsd-10-0-RELEASE,
netbsd-10-0-RC6,
netbsd-10-0-RC5,
netbsd-10-0-RC4,
netbsd-10-0-RC3,
netbsd-10-0-RC2,
netbsd-10-0-RC1
Diff to: previous 1.124: preferred, colored; next MAIN 1.125: preferred, colored
Changes since revision 1.124: +375 -248
lines
Pull up following revision(s) (requested by riastradh in ticket #284):
sys/dev/dkwedge/dk.c 1.125-1.158
sys/kern/subr_disk.c 1.135-1.137
sys/sys/disk.h 1.78
dk(4): Explain why dk_rawopens can't overflow and assert it.
dk(4): Restore assertions in dklastclose.
We only enter dklastclose if the wedge is open (sc->sc_dk.dk_openmask
!= 0), which can happen only if dkfirstopen has succeeded, in which
case we hold a dk_rawopens reference to the parent that prevents
anyone else from closing it. Hence sc->sc_parent->dk_rawopens > 0.
On open, sc->sc_parent->dk_rawvp is set to nonnull, and it is only
reset to null on close. Hence if the parent is still open, as it
must be here, sc->sc_parent->dk_rawvp must be nonnull.
dk(4): Avoid holding dkwedges_lock while allocating array.
This is not great -- we shouldn't be choosing the unit number here
anyway; we should just let autoconf do it for us -- but it's better
than potentially blocking any dk_openlock or dk_rawlock (which are
sometimes held when waiting for dkwedges_lock) for memory allocation.
dk(4): KNF: return (v) -> return v.
No functional change intended.
dk(4): KNF: Whitespace.
No functional change intended.
dk(4): Omit needless void * cast.
No functional change intended.
dk(4): Fix typo in comment: dkstrategy, not dkstragegy.
No functional change intended.
dk(4): ENXIO, not ENODEV, means no such device.
ENXIO is `device not configured', meaning there is no such device.
ENODEV is `operation not supported by device', meaning the device is
there but refuses the operation, like writing to a read-only medium.
Exception: For undefined ioctl commands, it's not ENODEV _or_ ENXIO,
but rather ENOTTY, because why make any of this obvious when you
could make it obscure Unix lore?
dk(4): KNF: Sort includes.
No functional change intended.
dk(4): <sys/rwlock.h> for rwlock(9).
dk(4): Prevent races in access to struct dkwedge_softc::sc_size.
Rules:
1. Only ever increases, never decreases.
(Decreases require removing and readding the wedge.)
2. Increases are serialized by dk_openlock.
3. Reads can happen unlocked in any context where the softc is valid.
Access is gathered into dkwedge_size* subroutines -- don't touch
sc_size outside these. For now, we use rwlock(9) to keep the
reasoning simple. This should be done with atomics on 64-bit
platforms and a seqlock on 32-bit platforms to avoid contention.
However, we can do that in a later change.
dk(4): Move CFDRIVER_DECL and CFATTACH_DECL3_NEW earlier in file.
Follows the pattern of most drivers, and will be necessary for
referencing dk_cd in dk_bdevsw and dk_cdevsw soon, to prevent
open/detach races.
No functional change intended.
dk(4): Don't touch dkwedges or ndkwedges outside dkwedges_lock.
dk(4): Assert parent vp is nonnull before we stash it away.
Let's enable early attribution if this goes wrong.
If it's not the parent's first open, also assert the parent vp is
already nonnull.
dk(4): Assert dkwedges[unit] is the sc we're about to free.
dk(4): Require dk_openlock in dk_set_geometry.
Not strictly necessary but this makes reasoning easier and documents
with an assertion how disk_set_info is serialized.
disk(9): Fix use-after-free race with concurrent disk_set_info.
This can happen with dk(4), which allows wedges to have their size
increased without destroying and recreating the device instance.
Drivers which allow concurrent disk_set_info and disk_ioctl must
serialize disk_set_info with dk_openlock.
dk(4): Add null d_cancel routine to devsw.
This way, dkclose is guaranteed that dkopen, dkread, dkwrite,
dkioctl, &c., have all returned before it runs. For block opens,
setting d_cancel also guarantees that any buffered writes are flushed
with vinvalbuf before dkclose is called.
dk(4): Fix callout detach race.
1. Set a flag sc_iostop under the lock sc_iolock so dkwedge_detach
and dkstart don't race over it.
2. Decline to schedule the callout if sc_iostop is set. The callout
is already only ever scheduled while the lock is held.
3. Use callout_halt to wait for any concurrent callout to complete.
At this point, it can't reschedule itself.
Without this change, the callout could be concurrently rescheduling
itself as we issue callout_stop, leading to use-after-free later.
dk(4): Use disk_begindetach and rely on vdevgone to close instances.
The first step is to decide whether we can detach (if forced, yes; if
not forced, only if not already open), and prevent new opens if so.
There's no need to start closing open instances at this point --
we're just making a decision to detach, and preventing new opens by
transitioning state that dkopen will respect[*].
The second step is to force all open instances to close. This is
done by vdevgone. By the time vdevgone returns, there can be no open
instances, so if there _were_ any, closing them via vdevgone will
have passed through dklastclose.
After that point, there can be no opens and no I/O operations, so
dk_openmask must already be zero and the bufq must be empty.
Thus, there's no need to have an explicit call to dklastclose (via
dkwedge_cleanup_parent) before or after making the decision to
detach.
[*] Currently access to this state is racy: nothing serializes
dkwedge_detach's state transition with dkopen's test. TBD in a
separate commit shortly.
dk(4): Set .d_cfdriver and .d_devtounit to plug open/detach race.
This way, opening dkN or rdkN will wait if attach or detach is still
in progress, and vdevgone will wake up such pending opens and make
them fail. So it is no longer possible for a wedge to be detached
after dkopen has already started using it.
For now, we use a custom .d_devtounit function that looks up the
autoconf unit number via the dkwedges array, which conceivably may
use an independent unit numbering system -- nothing guarantees they
match up. (In practice they will mostly match up, but concurrent
wedge creation could lead to different numbering.) Eventually this
should be changed so the two numbering systems match, which would let
us delete the new dkunit function and just use dev_minor_unit like
many other drivers can.
dk(4): Take a read-lock on dkwedges_lock if we're only reading.
- dkwedge_find_by_name
- dkwedge_find_by_parent
- dkwedge_print_wnames
dk(4): Omit needless locking in dksize, dkdump.
All the members these use are stable after initialization, except for
the wedge size, which dkwedge_size safely reads a snapshot of without
locking in the caller.
dk(4): dkdump: Simplify. No functional change intended.
dk(4): Narrow the scope of the device numbering lookup on detach.
Just need it for vdevgone, order relative to other things in detach
doesn't matter.
No functional change intended.
disk(9): Fix missing unlock in error branch in previous change.
dk(4): Fix racy access to sc->sc_dk.dk_openmask in dkwedge_delall1.
Need sc->sc_parent->dk_rawlock for this, as used in dkopen/dkclose.
dk(4): Convert tests to assertions in various devsw operations.
.d_cancel, .d_strategy, .d_read, .d_write, .d_ioctl, and .d_discard
are only ever used between successful .d_open return and entry to
.d_close. .d_open doesn't return until sc is nonnull and sc_state is
RUNNING, and dkwedge_detach waits for the last .d_close before
setting sc_state to DEAD. So there is no possibility for sc to be
null or for sc_state to be anything other than RUNNING or DYING.
There is a small functional change here but only in the event of a
race: in the short window between when dkwedge_detach is entered, and
when .d_close runs, any I/O operations (read, write, ioctl, &c.) may
be issued that would have failed with ENXIO before.
This shouldn't matter for anything: disk I/O operations are supposed
to complete reasonably promptly, and these operations _could_ have
begun milliseconds prior, before dkwedge_detach was entered, so it's
not a significant distinction.
Notes:
- .d_open must still contend with trying to open a nonexistent wedge,
of course.
- .d_close must also contend with closing a nonexistent wedge, in
case there were two calls to open in quick succession and the first
failed while the second hadn't yet determined it would fail.
- .d_size and .d_dump are used from ddb without any open/close.
dk(4): Fix lock assertion in size increase: parent's, not wedge's.
dk(4): Rename label for consistency. No functional change intended.
dk(4): dkclose must handle a dying wedge too to close the parent.
Otherwise the parent open leaks on detach (or revoke) when the wedge
was open and had to be forcibly closed.
Fixes assertion sc->sc_dk.dk_openmask == 0.
ioctl(DIOCRMWEDGES): Delete only idle wedges.
Don't forcibly delete busy wedges.
Fixes accidental destruction of the busy wedge that the root file
system is mounted on, triggered by syzbot's ioctl(DIOCRMWEDGES).
dk(4): Omit needless sc_iopend, sc_dkdrn mechanism.
vdevgone guarantees that all instances are closed by the time it
returns, which in turn guarantees all I/O operations (read, write,
ioctl, &c.) have completed, and, if the block device is open,
vinvalbuf(V_SAVE) -> vflushbuf has completed, which forces all
buffered transfers to be issued and waits for them to complete.
So by the time vdevgone returns, no further transfers can be
submitted and the bufq must be empty.
dk(4): Fix typo: sc_state, not sc_satte.
Had tested a patch series, but not every patch in it, and I
inadvertently fixed the typo in a later patch in the series, not in
the one I committed.
dk(4): Make it clearer that dkopen EROFS branch doesn't leak.
It looked like we may need to sometimes call dklastclose in error
branch for the case of (flags & ~sc->sc_mode & FWRITE) != 0, but it
is not actually possible to reach that case: if the caller requested
read/write, and the parent is read-only, and it is the first time
we've opened the parent, then dkfirstopen will fail with EROFS so we
never get there.
But this is confusing and it looked like the error branch is wrong,
so let's rearrange the conditional to make it clearer that we cannot
goto out after dkfirstopen has succeeded. And then assert that the
case cannot happen when we do call dkfirstopen.
dk(4): Need pdk->dk_openlock to read pdk->dk_wedges.
Revision 1.171: download - view: text, markup, annotated - select for diffs
Mon May 22 15:00:17 2023 UTC (20 months ago) by riastradh
Branches: MAIN
CVS tags: thorpej-ifq-base,
thorpej-ifq,
thorpej-altq-separation-base,
thorpej-altq-separation,
perseant-exfatfs-base-20240630,
perseant-exfatfs-base,
perseant-exfatfs,
HEAD
Diff to: previous 1.170: preferred, colored
Changes since revision 1.170: +51 -15
lines
dk(4): Add locking notes.
Revision 1.170: download - view: text, markup, annotated - select for diffs
Mon May 22 15:00:06 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.169: preferred, colored
Changes since revision 1.169: +11 -2
lines
dk(4): Explain why no need for device reference in dksize, dkdump.
Revision 1.169: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:58 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.168: preferred, colored
Changes since revision 1.168: +13 -2
lines
dk(4): Strengthen preconditions of various devsw operations.
These can only happen between dkopen and dkclose, so there's no need
to test -- we can assert instead that the wedge exists and is fully
initialized.
Revision 1.168: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:50 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.167: preferred, colored
Changes since revision 1.167: +10 -5
lines
dk(4): Strengthen dkclose preconditions.
Like dkopen, except it is possible for this to be called after the
wedge has transitioned to dying.
XXX sc_state read here races with sc_state write in dkwedge_detach.
Could change this to atomic_load/store.
Revision 1.167: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:42 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.166: preferred, colored
Changes since revision 1.166: +4 -4
lines
dk(4): Strengthen dkopen preconditions.
This cannot be called before dkwedge_attach for the same unit
returns, so sc->sc_dev is guaranteed to be set to a nonnull device_t
and the state is guaranteed not to be larval.
And this cannot be called concurrently with dkwedge_detach, or after
dkwedge_detach does vdevgone until another wedge with the same number
is attached (which can't happen until dkwedge_detach completes), so
the state is guaranteed not to be dying or dead.
Hence sc->sc_dev != NULL and sc->sc_state == DKW_STATE_RUNNING.
Revision 1.166: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:34 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.165: preferred, colored
Changes since revision 1.165: +17 -4
lines
dk(4): Prevent race between dkwedge_get_parent_name and wedge detach.
Still races with parent detach but maybe this is better.
XXX Maybe we should ditch dkwedge_get_parent_name -- it's used only
by rf_containsboot, which kinda suggests it shouldn't exist.
Revision 1.165: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:25 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.164: preferred, colored
Changes since revision 1.164: +50 -8
lines
dk(4): Split unsafe lookups into safe subroutines and unsafe wrappers.
No functional change intended.
Eventually we should adjust the callers to use the safe subroutines
instead and device_release when done.
Revision 1.164: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:16 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.163: preferred, colored
Changes since revision 1.163: +12 -2
lines
dk(4): Don't hold lock around uiomove in dkwedge_list.
Instead, hold a device reference. dkwedge_detach will not run until
the device reference is released.
Revision 1.163: download - view: text, markup, annotated - select for diffs
Mon May 22 14:59:07 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.162: preferred, colored
Changes since revision 1.162: +7 -7
lines
dk(4): Skip larval wedges in various lookup routines.
These have not yet finished a concurent dkwedge_attach, so there's
nothing we can safely do with them. Just pretend they don't exist --
as if we had arrived at the lookup a moment earlier.
Revision 1.162: download - view: text, markup, annotated - select for diffs
Mon May 22 14:58:59 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.161: preferred, colored
Changes since revision 1.161: +14 -8
lines
dk(4): Simplify dkwedge_delall by detaching directly.
No need for O(n^2) algorithm and potentially racy lookups -- not that
n is large enough for n^2 to matter, but the mechanism is simpler
this way.
Revision 1.161: download - view: text, markup, annotated - select for diffs
Mon May 22 14:58:50 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.160: preferred, colored
Changes since revision 1.160: +3 -12
lines
dk(4): Use device_lookup_private for dkwedge_lookup.
No longer necessary to go through the dkwedges array.
Currently device_lookup_private still involves touching other global
locks, but that will change eventually to a lockless pserialized fast
path.
Revision 1.160: download - view: text, markup, annotated - select for diffs
Mon May 22 14:58:41 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.159: preferred, colored
Changes since revision 1.159: +4 -36
lines
dk(4): dkunit is no longer needed; nix it.
dkwedges array indexing now coincides with autoconf device numbering.
Revision 1.159: download - view: text, markup, annotated - select for diffs
Mon May 22 14:58:32 2023 UTC (20 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.158: preferred, colored
Changes since revision 1.158: +55 -40
lines
dk(4): Use config_attach_pseudo_acquire to create wedges.
This way, indexing of the dkwedges array coincides with numbering of
autoconf dk(4) instances.
As a side effect, this plugs a race in dkwedge_add with concurrent
drvctl -r. There are a lot of such races in dk(4) left -- to be
addressed with more device references.
Revision 1.158: download - view: text, markup, annotated - select for diffs
Sat May 13 10:11:36 2023 UTC (20 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.157: preferred, colored
Changes since revision 1.157: +4 -2
lines
dk(4): Need pdk->dk_openlock to read pdk->dk_wedges.
Revision 1.157: download - view: text, markup, annotated - select for diffs
Wed May 10 23:08:24 2023 UTC (20 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.156: preferred, colored
Changes since revision 1.156: +15 -5
lines
dk(4): Make it clearer that dkopen EROFS branch doesn't leak.
It looked like we may need to sometimes call dklastclose in error
branch for the case of (flags & ~sc->sc_mode & FWRITE) != 0, but it
is not actually possible to reach that case: if the caller requested
read/write, and the parent is read-only, and it is the first time
we've opened the parent, then dkfirstopen will fail with EROFS so we
never get there.
But this is confusing and it looked like the error branch is wrong,
so let's rearrange the conditional to make it clearer that we cannot
goto out after dkfirstopen has succeeded. And then assert that the
case cannot happen when we do call dkfirstopen.
Revision 1.156: download - view: text, markup, annotated - select for diffs
Tue May 9 13:14:14 2023 UTC (20 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.155: preferred, colored
Changes since revision 1.155: +3 -3
lines
dk(4): Fix typo: sc_state, not sc_satte.
Had tested a patch series, but not every patch in it, and I
inadvertently fixed the typo in a later patch in the series, not in
the one I committed.
Revision 1.155: download - view: text, markup, annotated - select for diffs
Tue May 9 12:49:00 2023 UTC (20 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.154: preferred, colored
Changes since revision 1.154: +2 -38
lines
dk(4): Omit needless sc_iopend, sc_dkdrn mechanism.
vdevgone guarantees that all instances are closed by the time it
returns, which in turn guarantees all I/O operations (read, write,
ioctl, &c.) have completed, and, if the block device is open,
vinvalbuf(V_SAVE) -> vflushbuf has completed, which forces all
buffered transfers to be issued and waits for them to complete.
So by the time vdevgone returns, no further transfers can be
submitted and the bufq must be empty.
Revision 1.154: download - view: text, markup, annotated - select for diffs
Tue May 9 12:04:04 2023 UTC (20 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.153: preferred, colored
Changes since revision 1.153: +19 -6
lines
ioctl(DIOCRMWEDGES): Delete only idle wedges.
Don't forcibly delete busy wedges.
Reported-by: syzbot+e46f31fe56e04f567d88@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=8a00fd7f2e7459748d7a274098180a4708ff0f61
Fixes accidental destruction of the busy wedge that the root file
system is mounted on, triggered by syzbot's ioctl(DIOCRMWEDGES).
Revision 1.153: download - view: text, markup, annotated - select for diffs
Tue May 9 12:03:55 2023 UTC (20 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.152: preferred, colored
Changes since revision 1.152: +4 -3
lines
dk(4): dkclose must handle a dying wedge too to close the parent.
Otherwise the parent open leaks on detach (or revoke) when the wedge
was open and had to be forcibly closed.
Reported-by: syzbot+e46f31fe56e04f567d88@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=8a00fd7f2e7459748d7a274098180a4708ff0f61
Fixes assertion sc->sc_dk.dk_openmask == 0.
Revision 1.152: download - view: text, markup, annotated - select for diffs
Sat Apr 29 13:00:17 2023 UTC (20 months, 4 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.151: preferred, colored
Changes since revision 1.151: +5 -6
lines
dk(4): Rename label for consistency. No functional change intended.
Revision 1.151: download - view: text, markup, annotated - select for diffs
Sat Apr 29 06:23:37 2023 UTC (20 months, 4 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.150: preferred, colored
Changes since revision 1.150: +3 -3
lines
dk(4): Fix lock assertion in size increase: parent's, not wedge's.
Reported-by: syzbot+d4dc610473cacc5183dd@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=e18ddae8283d6fab44cfb1ac7e3f8e791f8c0700
Revision 1.150: download - view: text, markup, annotated - select for diffs
Sat Apr 22 13:11:50 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.149: preferred, colored
Changes since revision 1.149: +24 -34
lines
dk(4): Convert tests to assertions in various devsw operations.
.d_cancel, .d_strategy, .d_read, .d_write, .d_ioctl, and .d_discard
are only ever used between successful .d_open return and entry to
.d_close. .d_open doesn't return until sc is nonnull and sc_state is
RUNNING, and dkwedge_detach waits for the last .d_close before
setting sc_state to DEAD. So there is no possibility for sc to be
null or for sc_state to be anything other than RUNNING or DYING.
There is a small functional change here but only in the event of a
race: in the short window between when dkwedge_detach is entered, and
when .d_close runs, any I/O operations (read, write, ioctl, &c.) may
be issued that would have failed with ENXIO before.
This shouldn't matter for anything: disk I/O operations are supposed
to complete reasonably promptly, and these operations _could_ have
begun milliseconds prior, before dkwedge_detach was entered, so it's
not a significant distinction.
Notes:
- .d_open must still contend with trying to open a nonexistent wedge,
of course.
- .d_close must also contend with closing a nonexistent wedge, in
case there were two calls to open in quick succession and the first
failed while the second hadn't yet determined it would fail.
- .d_size and .d_dump are used from ddb without any open/close.
Revision 1.149: download - view: text, markup, annotated - select for diffs
Sat Apr 22 12:33:46 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.148: preferred, colored
Changes since revision 1.148: +5 -2
lines
dk(4): Fix racy access to sc->sc_dk.dk_openmask in dkwedge_delall1.
Need sc->sc_parent->dk_rawlock for this, as used in dkopen/dkclose.
Revision 1.148: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:54:09 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.147: preferred, colored
Changes since revision 1.147: +6 -6
lines
dk(4): Narrow the scope of the device numbering lookup on detach.
Just need it for vdevgone, order relative to other things in detach
doesn't matter.
No functional change intended.
Revision 1.147: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:45:13 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.146: preferred, colored
Changes since revision 1.146: +8 -17
lines
dk(4): dkdump: Simplify. No functional change intended.
Revision 1.146: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:44:58 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.145: preferred, colored
Changes since revision 1.145: +2 -14
lines
dk(4): Omit needless locking in dksize, dkdump.
All the members these use are stable after initialization, except for
the wedge size, which dkwedge_size safely reads a snapshot of without
locking in the caller.
Revision 1.145: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:44:18 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.144: preferred, colored
Changes since revision 1.144: +5 -5
lines
dk(4): Take a read-lock on dkwedges_lock if we're only reading.
- dkwedge_find_by_name
- dkwedge_find_by_parent
- dkwedge_print_wnames
Revision 1.144: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:31:00 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.143: preferred, colored
Changes since revision 1.143: +38 -2
lines
dk(4): Set .d_cfdriver and .d_devtounit to plug open/detach race.
This way, opening dkN or rdkN will wait if attach or detach is still
in progress, and vdevgone will wake up such pending opens and make
them fail. So it is no longer possible for a wedge to be detached
after dkopen has already started using it.
For now, we use a custom .d_devtounit function that looks up the
autoconf unit number via the dkwedges array, which conceivably may
use an independent unit numbering system -- nothing guarantees they
match up. (In practice they will mostly match up, but concurrent
wedge creation could lead to different numbering.) Eventually this
should be changed so the two numbering systems match, which would let
us delete the new dkunit function and just use dev_minor_unit like
many other drivers can.
Revision 1.143: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:30:52 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.142: preferred, colored
Changes since revision 1.142: +15 -28
lines
dk(4): Use disk_begindetach and rely on vdevgone to close instances.
The first step is to decide whether we can detach (if forced, yes; if
not forced, only if not already open), and prevent new opens if so.
There's no need to start closing open instances at this point --
we're just making a decision to detach, and preventing new opens by
transitioning state that dkopen will respect[*].
The second step is to force all open instances to close. This is
done by vdevgone. By the time vdevgone returns, there can be no open
instances, so if there _were_ any, closing them via vdevgone will
have passed through dklastclose.
After that point, there can be no opens and no I/O operations, so
dk_openmask must already be zero and the bufq must be empty.
Thus, there's no need to have an explicit call to dklastclose (via
dkwedge_cleanup_parent) before or after making the decision to
detach.
[*] Currently access to this state is racy: nothing serializes
dkwedge_detach's state transition with dkopen's test. TBD in a
separate commit shortly.
Revision 1.142: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:30:32 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.141: preferred, colored
Changes since revision 1.141: +10 -5
lines
dk(4): Fix callout detach race.
1. Set a flag sc_iostop under the lock sc_iolock so dkwedge_detach
and dkstart don't race over it.
2. Decline to schedule the callout if sc_iostop is set. The callout
is already only ever scheduled while the lock is held.
3. Use callout_halt to wait for any concurrent callout to complete.
At this point, it can't reschedule itself.
Without this change, the callout could be concurrently rescheduling
itself as we issue callout_stop, leading to use-after-free later.
Revision 1.141: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:30:21 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.140: preferred, colored
Changes since revision 1.140: +31 -2
lines
dk(4): Add null d_cancel routine to devsw.
This way, dkclose is guaranteed that dkopen, dkread, dkwrite,
dkioctl, &c., have all returned before it runs. For block opens,
setting d_cancel also guarantees that any buffered writes are flushed
with vinvalbuf before dkclose is called.
Revision 1.140: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:29:43 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.139: preferred, colored
Changes since revision 1.139: +6 -2
lines
dk(4): Require dk_openlock in dk_set_geometry.
Not strictly necessary but this makes reasoning easier and documents
with an assertion how disk_set_info is serialized.
Revision 1.139: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:29:33 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.138: preferred, colored
Changes since revision 1.138: +4 -2
lines
dk(4): Assert dkwedges[unit] is the sc we're about to free.
Revision 1.138: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:29:26 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.137: preferred, colored
Changes since revision 1.137: +4 -2
lines
dk(4): Assert parent vp is nonnull before we stash it away.
Let's enable early attribution if this goes wrong.
If it's not the parent's first open, also assert the parent vp is
already nonnull.
Revision 1.137: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:29:18 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.136: preferred, colored
Changes since revision 1.136: +12 -9
lines
dk(4): Don't touch dkwedges or ndkwedges outside dkwedges_lock.
Revision 1.136: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:26:35 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.135: preferred, colored
Changes since revision 1.135: +11 -7
lines
dk(4): Move CFDRIVER_DECL and CFATTACH_DECL3_NEW earlier in file.
Follows the pattern of most drivers, and will be necessary for
referencing dk_cd in dk_bdevsw and dk_cdevsw soon, to prevent
open/detach races.
No functional change intended.
Revision 1.135: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:25:49 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.134: preferred, colored
Changes since revision 1.134: +71 -20
lines
dk(4): Prevent races in access to struct dkwedge_softc::sc_size.
Rules:
1. Only ever increases, never decreases.
(Decreases require removing and readding the wedge.)
2. Increases are serialized by dk_openlock.
3. Reads can happen unlocked in any context where the softc is valid.
Access is gathered into dkwedge_size* subroutines -- don't touch
sc_size outside these. For now, we use rwlock(9) to keep the
reasoning simple. This should be done with atomics on 64-bit
platforms and a seqlock on 32-bit platforms to avoid contention.
However, we can do that in a later change.
Revision 1.134: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:25:30 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.133: preferred, colored
Changes since revision 1.133: +3 -2
lines
dk(4): <sys/rwlock.h> for rwlock(9).
Revision 1.133: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:25:22 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.132: preferred, colored
Changes since revision 1.132: +17 -15
lines
dk(4): KNF: Sort includes.
No functional change intended.
Revision 1.132: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:25:09 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.131: preferred, colored
Changes since revision 1.131: +14 -14
lines
dk(4): ENXIO, not ENODEV, means no such device.
ENXIO is `device not configured', meaning there is no such device.
ENODEV is `operation not supported by device', meaning the device is
there but refuses the operation, like writing to a read-only medium.
Exception: For undefined ioctl commands, it's not ENODEV _or_ ENXIO,
but rather ENOTTY, because why make any of this obvious when you
could make it obscure Unix lore?
Revision 1.131: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:24:56 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.130: preferred, colored
Changes since revision 1.130: +3 -3
lines
dk(4): Fix typo in comment: dkstrategy, not dkstragegy.
No functional change intended.
Revision 1.130: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:24:47 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.129: preferred, colored
Changes since revision 1.129: +3 -3
lines
dk(4): Omit needless void * cast.
No functional change intended.
Revision 1.129: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:24:39 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.128: preferred, colored
Changes since revision 1.128: +30 -28
lines
dk(4): KNF: Whitespace.
No functional change intended.
Revision 1.128: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:24:31 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.127: preferred, colored
Changes since revision 1.127: +41 -41
lines
dk(4): KNF: return (v) -> return v.
No functional change intended.
Revision 1.127: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:24:19 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.126: preferred, colored
Changes since revision 1.126: +39 -9
lines
dk(4): Avoid holding dkwedges_lock while allocating array.
This is not great -- we shouldn't be choosing the unit number here
anyway; we should just let autoconf do it for us -- but it's better
than potentially blocking any dk_openlock or dk_rawlock (which are
sometimes held when waiting for dkwedges_lock) for memory allocation.
Revision 1.126: download - view: text, markup, annotated - select for diffs
Fri Apr 21 18:09:38 2023 UTC (21 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.125: preferred, colored
Changes since revision 1.125: +4 -2
lines
dk(4): Restore assertions in dklastclose.
We only enter dklastclose if the wedge is open (sc->sc_dk.dk_openmask
!= 0), which can happen only if dkfirstopen has succeeded, in which
case we hold a dk_rawopens reference to the parent that prevents
anyone else from closing it. Hence sc->sc_parent->dk_rawopens > 0.
On open, sc->sc_parent->dk_rawvp is set to nonnull, and it is only
reset to null on close. Hence if the parent is still open, as it
must be here, sc->sc_parent->dk_rawvp must be nonnull.
Revision 1.125: download - view: text, markup, annotated - select for diffs
Thu Apr 13 08:30:40 2023 UTC (21 months, 2 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.124: preferred, colored
Changes since revision 1.124: +8 -2
lines
dk(4): Explain why dk_rawopens can't overflow and assert it.
Revision 1.124: download - view: text, markup, annotated - select for diffs
Tue Sep 27 17:04:52 2022 UTC (2 years, 3 months ago) by mlelstv
Branches: MAIN
CVS tags: netbsd-10-base,
bouyer-sunxi-drm-base,
bouyer-sunxi-drm
Branch point for: netbsd-10
Diff to: previous 1.123: preferred, colored
Changes since revision 1.123: +2 -4
lines
Remove bogus assertions.
Revision 1.123: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:32:30 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.122: preferred, colored
Changes since revision 1.122: +4 -4
lines
dk(4): Assert about dk_openmask under the lock.
This serves two purposes:
1. Pacifies data race sanitizers.
2. Ensures that we don't spuriously trip over the assertion if
dkclose happens concurrently with dkopen due to a revoke call.
Revision 1.122: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:31:57 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.121: preferred, colored
Changes since revision 1.121: +4 -4
lines
Revert "dk(4): Narrow scope of dk_rawlock on close to dklastclose."
dkfirstopen relies on reading from dk_openmask of _other_ wedges,
writes to dk_openmask must be serialized by dk_rawlock in addition to
dk_openlock. (However, reads from dk_openlock only require one or
the other).
Revision 1.121: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:20:36 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.120: preferred, colored
Changes since revision 1.120: +9 -12
lines
dk(4): dklastclose never fails. Make it return void.
Revision 1.120: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:20:27 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.119: preferred, colored
Changes since revision 1.119: +9 -16
lines
dk(4): Simplify dklastclose.
No functional change intended.
Revision 1.119: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:20:18 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.118: preferred, colored
Changes since revision 1.118: +3 -2
lines
dk(4): Assert parent is open in dklastclose.
It is not possible for us to be closing a wedge whose parent is not
open by at least this wedge.
Revision 1.118: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:20:03 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.117: preferred, colored
Changes since revision 1.117: +50 -34
lines
dk(4): Move first-open logic to new dkfirstopen function.
Makes the logic more clearly pair with dklastclose.
Revision 1.117: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:19:53 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.116: preferred, colored
Changes since revision 1.116: +5 -5
lines
dk(4): Turn locking contract comment into assertions in dklastclose.
Revision 1.116: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:19:43 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.115: preferred, colored
Changes since revision 1.115: +4 -4
lines
dk(4): Narrow scope of dk_rawlock on close to dklastclose.
No need to take it if we're not actually going to close the parent.
No functional change intended; dk_rawlock is only supposed to
serialize dk_rawopens access and open/close of the parent, after all.
Revision 1.115: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:19:33 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.114: preferred, colored
Changes since revision 1.114: +8 -12
lines
dk(4): Factor common mutex_exit out of branches to keep it balanced.
No functional change intended.
Revision 1.114: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:19:22 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.113: preferred, colored
Changes since revision 1.113: +8 -7
lines
dk(4): Move lock release out of dklastclose into caller.
No longer necessary to have this unbalanced logic now that
dk_close_parent correctly happens under the lock in order to
serialize with dk_open_parent.
No functional change intended.
Revision 1.113: download - view: text, markup, annotated - select for diffs
Mon Aug 22 00:19:12 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.112: preferred, colored
Changes since revision 1.112: +5 -5
lines
dk(4): Serialize closing parent's dk_rawvp with opening it.
Otherwise, the following events might happen:
- process 123 had /dev/rdkN open, starts close, enters dk_close_parent
- process 456 opens /dev/rdkM (same parent, different wedge), calls
dk_open_parent
At this point, the block device hasn't yet closed, so dk_open_parent
will fail with EBUSY. This is incorrect -- the chardev is never
supposed to fail with EBUSY, and dkopen/dkclose carefully manage
state to avoid opening the block device while it's still open. The
problem is that dkopen in process 456 didn't wait for vn_close
in process 123 to finish before calling VOP_OPEN.
(Note: If it were the _same_ chardev /dev/rdkN in both processes,
then spec_open/close would prevent this. But since it's a
_different_ chardev, spec_open/close assume that concurrency is OK,
and it's the driver's responsibility to serialize access to the
parent disk which, unbeknownst to spec_open/close, is shared between
dkN and dkM.)
It appears that the vn_close call was previously moved outside
dk_rawlock in 2010 to work around an unrelated bug in raidframe that
had already been fixed in HEAD:
Crash pointing to dk_rawlock and raidclose:
https://mail-index.netbsd.org/tech-kern/2010/07/27/msg008612.html
Change working around that crash:
https://mail-index.netbsd.org/source-changes/2010/08/04/msg012270.html
Change removing raidclose -> mutex_destroy(&dk_rawlock) path:
https://mail-index.netbsd.org/source-changes/2009/07/23/msg223381.html
Revision 1.112: download - view: text, markup, annotated - select for diffs
Sat Jun 11 18:17:00 2022 UTC (2 years, 7 months ago) by martin
Branches: MAIN
Diff to: previous 1.111: preferred, colored
Changes since revision 1.111: +6 -6
lines
Since rev 1.101 DIOCAWEDGE could return success without filling in the
wedge device name - which is quite confusing for userland.
Always fill the name if we return success.
Revision 1.111: download - view: text, markup, annotated - select for diffs
Sat Apr 23 16:22:23 2022 UTC (2 years, 9 months ago) by hannken
Branches: MAIN
Diff to: previous 1.110: preferred, colored
Changes since revision 1.110: +9 -3
lines
Need vnode locked fot VOP_FDISCARD().
Revision 1.110: download - view: text, markup, annotated - select for diffs
Sat Jan 15 19:34:11 2022 UTC (3 years ago) by riastradh
Branches: MAIN
Diff to: previous 1.109: preferred, colored
Changes since revision 1.109: +5 -15
lines
dk(4): Omit redundant microoptimization around cv_broadcast.
cv_broadcast already has a fast path for the no-waiter case.
Revision 1.109: download - view: text, markup, annotated - select for diffs
Mon Oct 18 11:40:56 2021 UTC (3 years, 3 months ago) by simonb
Branches: MAIN
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +3 -4
lines
Whitespace nits.
Revision 1.108: download - view: text, markup, annotated - select for diffs
Sat Oct 16 07:05:45 2021 UTC (3 years, 3 months ago) by simonb
Branches: MAIN
Diff to: previous 1.107: preferred, colored
Changes since revision 1.107: +2 -3
lines
Remove funny straggling blank line.
Revision 1.107: download - view: text, markup, annotated - select for diffs
Sat Aug 21 11:55:25 2021 UTC (3 years, 5 months ago) by andvar
Branches: MAIN
Diff to: previous 1.106: preferred, colored
Changes since revision 1.106: +3 -3
lines
fix some more typos in comments/log messages, improve wording as well.
Revision 1.106: download - view: text, markup, annotated - select for diffs
Wed Aug 4 21:44:41 2021 UTC (3 years, 5 months ago) by mlelstv
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base,
thorpej-i2c-spi-conf2,
thorpej-futex2-base,
thorpej-futex2
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +15 -8
lines
Swap and Dump uses DEV_BSIZE units. Translate from device sectors like
regular I/O (strategy).
Revision 1.102.6.1: download - view: text, markup, annotated - select for diffs
Thu Jun 17 04:46:27 2021 UTC (3 years, 7 months ago) by thorpej
Branches: thorpej-i2c-spi-conf
Diff to: previous 1.102: preferred, colored; next MAIN 1.103: preferred, colored
Changes since revision 1.102: +39 -7
lines
Sync w/ HEAD.
Revision 1.103.2.1: download - view: text, markup, annotated - select for diffs
Sun Jun 6 20:30:51 2021 UTC (3 years, 7 months ago) by cjep
Branches: cjep_sun2x
Diff to: previous 1.103: preferred, colored; next MAIN 1.104: preferred, colored
Changes since revision 1.103: +25 -10
lines
sync with head
Revision 1.105: download - view: text, markup, annotated - select for diffs
Wed Jun 2 17:56:40 2021 UTC (3 years, 7 months ago) by mlelstv
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf-base,
thorpej-cfargs2-base,
thorpej-cfargs2,
cjep_sun2x-base1
Diff to: previous 1.104: preferred, colored
Changes since revision 1.104: +3 -4
lines
Clear sc_mode only on last close.
Revision 1.104: download - view: text, markup, annotated - select for diffs
Wed Jun 2 15:59:08 2021 UTC (3 years, 7 months ago) by mlelstv
Branches: MAIN
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +26 -10
lines
Copy mode of open wedges with the same parent and validate it.
Remove race on mode value when closing.
Revision 1.102.8.1: download - view: text, markup, annotated - select for diffs
Mon May 31 22:15:17 2021 UTC (3 years, 7 months ago) by cjep
Branches: cjep_staticlib_x
Diff to: previous 1.102: preferred, colored; next MAIN 1.103: preferred, colored
Changes since revision 1.102: +21 -4
lines
sync with head
Revision 1.103: download - view: text, markup, annotated - select for diffs
Sat May 22 13:43:50 2021 UTC (3 years, 8 months ago) by mlelstv
Branches: MAIN
CVS tags: cjep_sun2x-base,
cjep_staticlib_x-base1
Branch point for: cjep_sun2x
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +21 -4
lines
Handle read-only parent devices.
Currently this only affects xbd(4). Other disk drivers succeed opening
read-only disks as read-write and only fail subsequent write requests.
Revision 1.97.8.4: download - view: text, markup, annotated - select for diffs
Sun Oct 11 12:34:29 2020 UTC (4 years, 3 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-4-RELEASE,
netbsd-9-3-RELEASE,
netbsd-9-2-RELEASE,
netbsd-9-1-RELEASE
Diff to: previous 1.97.8.3: preferred, colored; branchpoint 1.97: preferred, colored; next MAIN 1.98: preferred, colored
Changes since revision 1.97.8.3: +6 -3
lines
Pull up following revision(s) (requested by mlelstv in ticket #1110):
sys/dev/dkwedge/dk.c: revision 1.102
sys/dev/ccd.c: revision 1.185
sbin/ccdconfig/ccdconfig.c: revision 1.58
Use raw device for configuring units. This is necessary as
having a block device opened prevents autodiscovery of wedges.
Fix ioctl locking. Add dkdriver.
Check dkdriver before calling a driver function.
Revision 1.102: download - view: text, markup, annotated - select for diffs
Tue Oct 6 15:05:54 2020 UTC (4 years, 3 months ago) by mlelstv
Branches: MAIN
CVS tags: thorpej-futex-base,
thorpej-futex,
thorpej-cfargs-base,
thorpej-cfargs,
cjep_staticlib_x-base
Branch point for: thorpej-i2c-spi-conf,
cjep_staticlib_x
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +6 -3
lines
Check dkdriver before calling a driver function.
Revision 1.101: download - view: text, markup, annotated - select for diffs
Sun May 24 14:40:21 2020 UTC (4 years, 8 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.100: preferred, colored
Changes since revision 1.100: +31 -2
lines
dkwedge_add: Allow for expanding the size of an existing wedge without
having to delete it first, provided that no other parameters have changed.
Revision 1.97.8.3: download - view: text, markup, annotated - select for diffs
Fri Apr 24 17:42:53 2020 UTC (4 years, 9 months ago) by martin
Branches: netbsd-9
Diff to: previous 1.97.8.2: preferred, colored; branchpoint 1.97: preferred, colored
Changes since revision 1.97.8.2: +12 -10
lines
Pull up following revision(s) (requested by maya in ticket #850):
sys/dev/dkwedge/dk.c: revision 1.98
Update sc->sc_parent->dk_rawvp while the lock named dk_rawlock held
to prevent a race condition
Fixes PR kern/55026
OKed by mlelstv@, thanks
Revision 1.96.6.1: download - view: text, markup, annotated - select for diffs
Fri Apr 24 16:15:24 2020 UTC (4 years, 9 months ago) by martin
Branches: netbsd-8
CVS tags: netbsd-8-3-RELEASE
Diff to: previous 1.96: preferred, colored; next MAIN 1.97: preferred, colored
Changes since revision 1.96: +12 -10
lines
Pull up following revision(s) (requested by maya in ticket #1541):
sys/dev/dkwedge/dk.c: revision 1.98
Update sc->sc_parent->dk_rawvp while the lock named dk_rawlock held
to prevent a race condition
Fixes PR kern/55026
OKed by mlelstv@, thanks
Revision 1.97.2.1: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:08:03 2020 UTC (4 years, 9 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.97: preferred, colored; next MAIN 1.98: preferred, colored
Changes since revision 1.97: +31 -11
lines
Merge changes from current as of 20200406
Revision 1.97.8.2: download - view: text, markup, annotated - select for diffs
Mon Apr 6 14:53:33 2020 UTC (4 years, 9 months ago) by martin
Branches: netbsd-9
Diff to: previous 1.97.8.1: preferred, colored; branchpoint 1.97: preferred, colored
Changes since revision 1.97.8.1: +4 -3
lines
Pull up following revision(s) (requested by riastradh in ticket #822):
sys/dev/dkwedge/dk.c: revision 1.99
Allow dumping to cgd(4) on a dk(4).
(Technically this also allows dumping to a dk(4) on which there
happens to be a cgd(4) configured, but I'm not sure how to
distinguish that case here. So don't do that!)
Revision 1.97.8.1: download - view: text, markup, annotated - select for diffs
Sat Mar 21 15:18:57 2020 UTC (4 years, 10 months ago) by martin
Branches: netbsd-9
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +19 -2
lines
Pull up following revision(s) (requested by riastradh in ticket #788):
sys/sys/dkio.h: revision 1.26
sys/dev/dkwedge/dk.c: revision 1.100
sys/sys/disk.h: revision 1.75
external/cddl/osnet/dist/uts/common/fs/zfs/vdev_disk.c: revision 1.14
external/cddl/osnet/dist/uts/common/fs/zfs/vdev_disk.c: revision 1.15
sys/dev/cgd.c: revision 1.121
sys/dev/ata/wdvar.h: revision 1.50
sys/kern/subr_disk_open.c: revision 1.15
sys/dev/ata/wd.c: revision 1.459
New ioctl DIOCGSECTORALIGN returns sector alignment parameters.
struct disk_sectoralign {
/* First aligned sector number. */
uint32_t dsa_firstaligned;
/* Number of sectors per aligned unit. */
uint32_t dsa_alignment;
};
- Teach wd(4) to get it from ATA.
- Teach cgd(4) to pass it through from the underlying disk.
- Teach dk(4) to pass it through with adjustments.
- Teach zpool (zfs) to take advantage of it.
=> XXX zpool doesn't seem to understand when the vdev's starting
sector is misaligned.
Missing:
- ccd(4) and raidframe(4) support -- these should support _using_
DIOCGSECTORALIGN to decide where to start putting ccd or raid
stripes on disk, and these should perhaps _implement_
DIOCGSECTORALIGN by reporting the stripe/interleave factor.
- sd(4) support -- I don't know any obvious way to get it from SCSI,
but if any SCSI wizards know better than I, please feel free to
teach sd(4) about it!
- any ld(4) attachments -- might be worth teaching the ld drivers for
nvme and various raid controllers to get the aligned sector size
There's some duplicate logic here for now. I'm doing it this way,
rather than gathering the logic into a new disklabel_sectoralign
function or something, so that this change is limited to adding a new
ioctl, without any new kernel symbols, in order to make it easy to
pull up to netbsd-9 without worrying about the module ABI.
Make getdiskinfo() compatible with a DIOCGWEDGEINFO.
dkw_parent is defined to hold the disk name as used by disk_find(), not
a partition (i.e. no partition letter appended).
Use utility functions to handle disk geometry.
Revision 1.100: download - view: text, markup, annotated - select for diffs
Mon Mar 2 16:01:56 2020 UTC (4 years, 10 months ago) by riastradh
Branches: MAIN
CVS tags: phil-wifi-20200421,
phil-wifi-20200411,
phil-wifi-20200406,
is-mlppp-base,
is-mlppp,
bouyer-xenpvh-base2,
bouyer-xenpvh-base1,
bouyer-xenpvh-base,
bouyer-xenpvh
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +19 -2
lines
New ioctl DIOCGSECTORALIGN returns sector alignment parameters.
struct disk_sectoralign {
/* First aligned sector number. */
uint32_t dsa_firstaligned;
/* Number of sectors per aligned unit. */
uint32_t dsa_alignment;
};
- Teach wd(4) to get it from ATA.
- Teach cgd(4) to pass it through from the underlying disk.
- Teach dk(4) to pass it through with adjustments.
- Teach zpool (zfs) to take advantage of it.
=> XXX zpool doesn't seem to understand when the vdev's starting
sector is misaligned.
Missing:
- ccd(4) and raidframe(4) support -- these should support _using_
DIOCGSECTORALIGN to decide where to start putting ccd or raid
stripes on disk, and these should perhaps _implement_
DIOCGSECTORALIGN by reporting the stripe/interleave factor.
- sd(4) support -- I don't know any obvious way to get it from SCSI,
but if any SCSI wizards know better than I, please feel free to
teach sd(4) about it!
- any ld(4) attachments -- might be worth teaching the ld drivers for
nvme and various raid controllers to get the aligned sector size
There's some duplicate logic here for now. I'm doing it this way,
rather than gathering the logic into a new disklabel_sectoralign
function or something, so that this change is limited to adding a new
ioctl, without any new kernel symbols, in order to make it easy to
pull up to netbsd-9 without worrying about the module ABI.
Revision 1.99: download - view: text, markup, annotated - select for diffs
Sun Mar 1 03:19:46 2020 UTC (4 years, 10 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +4 -3
lines
Allow dumping to cgd(4) on a dk(4).
(Technically this also allows dumping to a dk(4) on which there
happens to be a cgd(4) configured, but I'm not sure how to
distinguish that case here. So don't do that!)
Revision 1.97.10.1: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:19:07 2020 UTC (4 years, 10 months ago) by ad
Branches: ad-namecache
Diff to: previous 1.97: preferred, colored; next MAIN 1.98: preferred, colored
Changes since revision 1.97: +12 -10
lines
Sync with head.
Revision 1.98: download - view: text, markup, annotated - select for diffs
Fri Feb 28 06:01:23 2020 UTC (4 years, 10 months ago) by yamaguchi
Branches: MAIN
CVS tags: ad-namecache-base3
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +12 -10
lines
Update sc->sc_parent->dk_rawvp while the lock named dk_rawlock held
to prevent a race condition
Fixes PR kern/55026
OKed by mlelstv@, thanks
Revision 1.96.12.1: download - view: text, markup, annotated - select for diffs
Mon May 21 04:36:05 2018 UTC (6 years, 8 months ago) by pgoyette
Branches: pgoyette-compat
CVS tags: pgoyette-compat-merge-20190127
Diff to: previous 1.96: preferred, colored; next MAIN 1.97: preferred, colored
Changes since revision 1.96: +3 -3
lines
Sync with HEAD
Revision 1.97: download - view: text, markup, annotated - select for diffs
Sat May 12 10:33:06 2018 UTC (6 years, 8 months ago) by mlelstv
Branches: MAIN
CVS tags: phil-wifi-base,
phil-wifi-20191119,
phil-wifi-20190609,
pgoyette-compat-20190127,
pgoyette-compat-20190118,
pgoyette-compat-1226,
pgoyette-compat-1126,
pgoyette-compat-1020,
pgoyette-compat-0930,
pgoyette-compat-0906,
pgoyette-compat-0728,
pgoyette-compat-0625,
pgoyette-compat-0521,
netbsd-9-base,
netbsd-9-0-RELEASE,
netbsd-9-0-RC2,
netbsd-9-0-RC1,
jdolecek-ncqfixes-base,
jdolecek-ncqfixes,
isaki-audio2-base,
isaki-audio2,
ad-namecache-base2,
ad-namecache-base1,
ad-namecache-base
Branch point for: phil-wifi,
netbsd-9,
ad-namecache
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +3 -3
lines
Support dump on wedges.
Revision 1.64.2.5: download - view: text, markup, annotated - select for diffs
Sun Dec 3 11:37:00 2017 UTC (7 years, 1 month ago) by jdolecek
Branches: tls-maxphys
Diff to: previous 1.64.2.4: preferred, colored; next MAIN 1.65: preferred, colored
Changes since revision 1.64.2.4: +319 -129
lines
update from HEAD
Revision 1.75.2.8: download - view: text, markup, annotated - select for diffs
Mon Aug 28 17:52:01 2017 UTC (7 years, 4 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.7: preferred, colored; branchpoint 1.75: preferred, colored; next MAIN 1.76: preferred, colored
Changes since revision 1.75.2.7: +6 -11
lines
Sync with HEAD
Revision 1.96.4.2: download - view: text, markup, annotated - select for diffs
Wed May 17 01:44:17 2017 UTC (7 years, 8 months ago) by pgoyette
Branches: prg-localcount2
Diff to: previous 1.96.4.1: preferred, colored; branchpoint 1.96: preferred, colored; next MAIN 1.97: preferred, colored
Changes since revision 1.96.4.1: +3 -2
lines
At suggestion of chuq@, modify config_attach_pseudo() to return with a
reference held on the device.
Adapt callers to expect the reference to exist, and to ensure that the
reference is released.
Revision 1.96.4.1: download - view: text, markup, annotated - select for diffs
Thu Apr 27 05:36:35 2017 UTC (7 years, 9 months ago) by pgoyette
Branches: prg-localcount2
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +4 -3
lines
Restore all work from the former pgoyette-localcount branch (which is
now abandoned doe to cvs merge botch).
The branch now builds, and installs via anita. There are still some
problems (cgd is non-functional and all atf tests time-out) but they
will get resolved soon.
Revision 1.93.2.1: download - view: text, markup, annotated - select for diffs
Fri Apr 21 16:53:45 2017 UTC (7 years, 9 months ago) by bouyer
Branches: bouyer-socketcan
Diff to: previous 1.93: preferred, colored; next MAIN 1.94: preferred, colored
Changes since revision 1.93: +13 -16
lines
Sync with HEAD
Revision 1.91.2.3: download - view: text, markup, annotated - select for diffs
Mon Mar 20 06:57:27 2017 UTC (7 years, 10 months ago) by pgoyette
Branches: pgoyette-localcount
Diff to: previous 1.91.2.2: preferred, colored; branchpoint 1.91: preferred, colored; next MAIN 1.92: preferred, colored
Changes since revision 1.91.2.2: +13 -16
lines
Sync with HEAD
Revision 1.96: download - view: text, markup, annotated - select for diffs
Sun Mar 5 23:07:12 2017 UTC (7 years, 10 months ago) by mlelstv
Branches: MAIN
CVS tags: tls-maxphys-base-20171202,
prg-localcount2-base3,
prg-localcount2-base2,
prg-localcount2-base1,
prg-localcount2-base,
pgoyette-localcount-20170426,
pgoyette-localcount-20170320,
pgoyette-compat-base,
pgoyette-compat-0502,
pgoyette-compat-0422,
pgoyette-compat-0415,
pgoyette-compat-0407,
pgoyette-compat-0330,
pgoyette-compat-0322,
pgoyette-compat-0315,
perseant-stdc-iso10646-base,
perseant-stdc-iso10646,
nick-nhusb-base-20170825,
netbsd-8-base,
netbsd-8-2-RELEASE,
netbsd-8-1-RELEASE,
netbsd-8-1-RC1,
netbsd-8-0-RELEASE,
netbsd-8-0-RC2,
netbsd-8-0-RC1,
matt-nb8-mediatek-base,
matt-nb8-mediatek,
jdolecek-ncq-base,
jdolecek-ncq,
bouyer-socketcan-base1
Branch point for: prg-localcount2,
pgoyette-compat,
netbsd-8
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +3 -2
lines
Enhance disk metrics by calculating a weighted sum that is incremented
by the number of concurrent I/O requests. Also introduce a new disk_wait()
function to measure requests waiting in a bufq.
iostat -y now reports data about waiting and active requests.
So far only drivers using dksubr and dk, ccd, wd and xbd collect data about
waiting requests.
Revision 1.95: download - view: text, markup, annotated - select for diffs
Mon Feb 27 21:27:07 2017 UTC (7 years, 10 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +5 -11
lines
pass also DIOCGCACHE to underlying device, so that upper layers would be able
to get the device cache properties without knowing the topology; while here also
pass down DIOCGSTRATEGY for neater dkctl(8) output
Revision 1.75.2.7: download - view: text, markup, annotated - select for diffs
Sun Feb 5 13:40:27 2017 UTC (7 years, 11 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.6: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.2.6: +69 -33
lines
Sync with HEAD
Revision 1.94: download - view: text, markup, annotated - select for diffs
Thu Jan 19 00:44:40 2017 UTC (8 years ago) by maya
Branches: MAIN
CVS tags: nick-nhusb-base-20170204
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +9 -7
lines
use a bounded copy. NFCI
Revision 1.91.2.2: download - view: text, markup, annotated - select for diffs
Sat Jan 7 08:56:31 2017 UTC (8 years ago) by pgoyette
Branches: pgoyette-localcount
Diff to: previous 1.91.2.1: preferred, colored; branchpoint 1.91: preferred, colored
Changes since revision 1.91.2.1: +62 -28
lines
Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
Revision 1.93: download - view: text, markup, annotated - select for diffs
Sat Dec 24 16:39:55 2016 UTC (8 years, 1 month ago) by mlelstv
Branches: MAIN
CVS tags: pgoyette-localcount-20170107,
bouyer-socketcan-base
Branch point for: bouyer-socketcan
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +6 -0
lines
add missing mutex/cv cleanup to error paths.
Revision 1.92: download - view: text, markup, annotated - select for diffs
Fri Dec 16 15:06:39 2016 UTC (8 years, 1 month ago) by mlelstv
Branches: MAIN
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +56 -28
lines
Make dk(4) device mpsafe.
Revision 1.91.2.1: download - view: text, markup, annotated - select for diffs
Wed Jul 20 23:47:56 2016 UTC (8 years, 6 months ago) by pgoyette
Branches: pgoyette-localcount
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +4 -3
lines
Adapt machine-independant code to the new {b,c}devsw reference-counting
(using localcount(9)). All callers of {b,c}devsw_lookup() now call
{b,c}devsw_lookup_acquire() which retains a reference on the 'struct
{b,c}devsw'. This reference must be released by the caller once it is
finished with the structure's content (or other data that would disappear
if the 'struct {b,c}devsw' were to disappear).
Revision 1.75.2.6: download - view: text, markup, annotated - select for diffs
Sat Jul 9 20:25:01 2016 UTC (8 years, 6 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.5: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.2.5: +13 -11
lines
Sync with HEAD
Revision 1.91: download - view: text, markup, annotated - select for diffs
Sun May 29 13:11:21 2016 UTC (8 years, 7 months ago) by mlelstv
Branches: MAIN
CVS tags: pgoyette-localcount-base,
pgoyette-localcount-20161104,
pgoyette-localcount-20160806,
pgoyette-localcount-20160726,
nick-nhusb-base-20161204,
nick-nhusb-base-20161004,
nick-nhusb-base-20160907,
localcount-20160914
Branch point for: pgoyette-localcount
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +4 -3
lines
missed one exit path with the previous change.
Revision 1.90: download - view: text, markup, annotated - select for diffs
Sun May 29 12:48:40 2016 UTC (8 years, 7 months ago) by mlelstv
Branches: MAIN
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +11 -10
lines
release openlock mutex before closing parent device.
Revision 1.75.2.5: download - view: text, markup, annotated - select for diffs
Sun May 29 08:44:20 2016 UTC (8 years, 7 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.4: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.2.4: +19 -2
lines
Sync with HEAD
Revision 1.89: download - view: text, markup, annotated - select for diffs
Wed Apr 27 02:19:12 2016 UTC (8 years, 9 months ago) by christos
Branches: MAIN
CVS tags: nick-nhusb-base-20160529
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +19 -2
lines
Add dkwedge_find_by_parent()
Revision 1.75.2.4: download - view: text, markup, annotated - select for diffs
Sat Mar 19 11:30:09 2016 UTC (8 years, 10 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.3: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.2.3: +19 -15
lines
Sync with HEAD
Revision 1.88: download - view: text, markup, annotated - select for diffs
Fri Jan 15 07:48:22 2016 UTC (9 years ago) by mlelstv
Branches: MAIN
CVS tags: nick-nhusb-base-20160422,
nick-nhusb-base-20160319
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +4 -3
lines
Allow dump to raidframe component which is a wedge.
N.B. ordinary devices check the partition type only in the xxxsize routine.
Revision 1.75.2.3: download - view: text, markup, annotated - select for diffs
Sun Dec 27 12:09:49 2015 UTC (9 years, 1 month ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.2: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.2.2: +9 -9
lines
Sync with HEAD (as of 26th Dec)
Revision 1.87: download - view: text, markup, annotated - select for diffs
Sun Dec 27 00:47:47 2015 UTC (9 years, 1 month ago) by mlelstv
Branches: MAIN
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +17 -14
lines
Return error in dkopen when dk_open_parent fails. Also change dk_open_parent
to pass error code to caller.
XXX: Pullups
Revision 1.86: download - view: text, markup, annotated - select for diffs
Sat Nov 28 13:41:31 2015 UTC (9 years, 2 months ago) by mlelstv
Branches: MAIN
CVS tags: nick-nhusb-base-20151226
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +3 -3
lines
sc_size is already measured in sectors.
Revision 1.85: download - view: text, markup, annotated - select for diffs
Sat Oct 10 23:39:43 2015 UTC (9 years, 3 months ago) by christos
Branches: MAIN
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +2 -4
lines
remove incorrect comment (from kre)
Revision 1.84: download - view: text, markup, annotated - select for diffs
Tue Oct 6 11:22:40 2015 UTC (9 years, 3 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +8 -6
lines
print wedge announcement in one line instead of two
Revision 1.75.2.2: download - view: text, markup, annotated - select for diffs
Tue Sep 22 12:05:57 2015 UTC (9 years, 4 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75.2.1: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.2.1: +85 -33
lines
Sync with HEAD
Revision 1.72.2.4: download - view: text, markup, annotated - select for diffs
Tue Sep 8 12:02:33 2015 UTC (9 years, 4 months ago) by martin
Branches: netbsd-7
CVS tags: netbsd-7-nhusb-base-20170116,
netbsd-7-nhusb-base,
netbsd-7-nhusb,
netbsd-7-2-RELEASE,
netbsd-7-1-RELEASE,
netbsd-7-1-RC2,
netbsd-7-1-RC1,
netbsd-7-1-2-RELEASE,
netbsd-7-1-1-RELEASE,
netbsd-7-1,
netbsd-7-0-RELEASE,
netbsd-7-0-2-RELEASE,
netbsd-7-0-1-RELEASE,
netbsd-7-0
Diff to: previous 1.72.2.3: preferred, colored; branchpoint 1.72: preferred, colored; next MAIN 1.73: preferred, colored
Changes since revision 1.72.2.3: +83 -31
lines
Pull up following revision(s) (requested by mlelstv in ticket #967):
sys/dev/dkwedge/dk.c: revision 1.82
No longer access the disk driver directly.
If there is an open wedge, temporarily reference its vnode.
Otherwise try to open the block device.
Revision 1.83: download - view: text, markup, annotated - select for diffs
Tue Aug 25 11:08:59 2015 UTC (9 years, 5 months ago) by pooka
Branches: MAIN
CVS tags: nick-nhusb-base-20150921
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +9 -9
lines
Rename variable to avoid -Wshadow warnings with some compilers.
Revision 1.82: download - view: text, markup, annotated - select for diffs
Sat Aug 22 07:48:14 2015 UTC (9 years, 5 months ago) by mlelstv
Branches: MAIN
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +83 -31
lines
No longer access the disk driver directly.
If there is an open wedge, temporarily reference its vnode.
Otherwise try to open the block device.
Revision 1.81: download - view: text, markup, annotated - select for diffs
Sat Aug 22 07:42:46 2015 UTC (9 years, 5 months ago) by mlelstv
Branches: MAIN
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +2 -9
lines
revert the previous
Revision 1.80: download - view: text, markup, annotated - select for diffs
Thu Aug 20 23:08:33 2015 UTC (9 years, 5 months ago) by mlelstv
Branches: MAIN
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +11 -4
lines
when scanning for disklabels, close block device only when this was
the first open. The device driver doesn't do reference counting.
This is still subject to race conditions.
Revision 1.75.2.1: download - view: text, markup, annotated - select for diffs
Mon Apr 6 15:18:08 2015 UTC (9 years, 9 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +17 -12
lines
Sync with HEAD
Revision 1.79: download - view: text, markup, annotated - select for diffs
Fri Jan 2 01:14:22 2015 UTC (10 years ago) by christos
Branches: MAIN
CVS tags: nick-nhusb-base-20150606,
nick-nhusb-base-20150406
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +4 -4
lines
- Use NODEV instead of 0
- Return EBUSY if there was no label
Revision 1.78: download - view: text, markup, annotated - select for diffs
Wed Dec 31 19:52:05 2014 UTC (10 years ago) by christos
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +7 -3
lines
make more drivers use disk_ioctl, and add a dev parameter to it so that
we can merge the "easy" disklabel ioctls to it. Ultimately all this will
go do dk_ioctl once all the drivers have been converted.
Revision 1.77: download - view: text, markup, annotated - select for diffs
Wed Dec 31 08:24:50 2014 UTC (10 years ago) by mlelstv
Branches: MAIN
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +9 -10
lines
disk_blocksize and disk_set_info relay the same information
to the disk subsystem.
Make disk_set_info also set blocksize shift values.
Remove every call to disk_blocksize.
Keep disk_blocksize for ABI compatibility, make it also set dg_secsize.
Revision 1.72.2.3: download - view: text, markup, annotated - select for diffs
Tue Dec 9 20:17:16 2014 UTC (10 years, 1 month ago) by martin
Branches: netbsd-7
CVS tags: netbsd-7-0-RC3,
netbsd-7-0-RC2,
netbsd-7-0-RC1
Diff to: previous 1.72.2.2: preferred, colored; branchpoint 1.72: preferred, colored
Changes since revision 1.72.2.2: +17 -12
lines
Pull up following revision(s) (requested by mlelstv in ticket #304):
sys/dev/dkwedge/dk.c: revision 1.75
sys/dev/dkwedge/dk.c: revision 1.76
fix iobuf setup, cleanup
Really provide disk properties, the old code computed values that were
never attached to the device.
Revision 1.76: download - view: text, markup, annotated - select for diffs
Mon Dec 8 17:45:12 2014 UTC (10 years, 1 month ago) by mlelstv
Branches: MAIN
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +10 -8
lines
Really provide disk properties, the old code computed values that were
never attached to the device.
Revision 1.75: download - view: text, markup, annotated - select for diffs
Sat Nov 22 11:59:33 2014 UTC (10 years, 2 months ago) by mlelstv
Branches: MAIN
CVS tags: nick-nhusb-base
Branch point for: nick-nhusb
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +9 -6
lines
fix iobuf setup, cleanup
Revision 1.72.2.2: download - view: text, markup, annotated - select for diffs
Tue Nov 11 10:36:41 2014 UTC (10 years, 2 months ago) by martin
Branches: netbsd-7
Diff to: previous 1.72.2.1: preferred, colored; branchpoint 1.72: preferred, colored
Changes since revision 1.72.2.1: +102 -46
lines
Pull up following revision(s) (requested by mlelstv in ticket #201):
sbin/dkctl/dkctl.8: revision 1.24
sbin/dkctl/dkctl.8: revision 1.25
sys/dev/scsipi/sd.c: revision 1.310
sys/dev/ata/wd.c: revision 1.415
sbin/dkctl/dkctl.c: revision 1.21
sys/dev/raidframe/rf_netbsdkintf.c: revision 1.315
sys/dev/ld.c: revision 1.78
sys/dev/vnd.c: revision 1.234
sys/dev/dksubr.c: revision 1.54
sys/sys/dkio.h: revision 1.20
sys/dev/dkwedge/dk.c: revision 1.74
Add ioctl to autodiscover wedges.
Implement DIOCMWEDGES ioctl that triggers wedge autodiscovery.
Also fix a reference counting bug and clean up some code.
support DIOCMWEDGES ioctl.
Add 'makewedges' option to autodiscover wedges from a changed label.
New sentence, new line. Bump date for previous.
Revision 1.74: download - view: text, markup, annotated - select for diffs
Tue Nov 4 07:50:39 2014 UTC (10 years, 2 months ago) by mlelstv
Branches: MAIN
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +102 -46
lines
Implement DIOCMWEDGES ioctl that triggers wedge autodiscovery.
Also fix a reference counting bug and clean up some code.
Revision 1.72.2.1: download - view: text, markup, annotated - select for diffs
Fri Aug 29 11:49:41 2014 UTC (10 years, 4 months ago) by martin
Branches: netbsd-7
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +19 -2
lines
Pull up following revision(s) (requested by riastradh in ticket #65):
sys/dev/dkwedge/dk.c: revision 1.73
Make dk(4) discard from partition start, not from disk start.
Otherwise, anything mounted with `-o discard' will pretty quickly
munch itself up and barf up an unrecoverably corrupted file system!
XXX pullup to netbsd-7
Revision 1.73: download - view: text, markup, annotated - select for diffs
Thu Aug 28 19:37:46 2014 UTC (10 years, 5 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +19 -2
lines
Make dk(4) discard from partition start, not from disk start.
Otherwise, anything mounted with `-o discard' will pretty quickly
munch itself up and barf up an unrecoverably corrupted file system!
XXX pullup to netbsd-7
Revision 1.64.2.4: download - view: text, markup, annotated - select for diffs
Wed Aug 20 00:03:36 2014 UTC (10 years, 5 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.64.2.3: preferred, colored
Changes since revision 1.64.2.3: +57 -5
lines
Rebase to HEAD as of a few days ago.
Revision 1.69.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 10 06:54:50 2014 UTC (10 years, 5 months ago) by tls
Branches: tls-earlyentropy
Diff to: previous 1.69: preferred, colored; next MAIN 1.70: preferred, colored
Changes since revision 1.69: +25 -2
lines
Rebase.
Revision 1.72: download - view: text, markup, annotated - select for diffs
Fri Jul 25 08:23:56 2014 UTC (10 years, 6 months ago) by dholland
Branches: MAIN
CVS tags: tls-maxphys-base,
tls-earlyentropy-base,
netbsd-7-base
Branch point for: netbsd-7
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +25 -4
lines
Implement d_discard for dk. This closes PR 47940.
Revision 1.71: download - view: text, markup, annotated - select for diffs
Fri Jul 25 08:10:36 2014 UTC (10 years, 6 months ago) by dholland
Branches: MAIN
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +3 -2
lines
Add d_discard to all struct cdevsw instances I could find.
All have been set to "nodiscard"; some should get a real implementation.
Revision 1.70: download - view: text, markup, annotated - select for diffs
Fri Jul 25 08:02:19 2014 UTC (10 years, 6 months ago) by dholland
Branches: MAIN
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +3 -2
lines
Add d_discard to all struct bdevsw instances I could find.
I've set them all to nodiscard. Some of them (wd, dk, vnd, ld,
raidframe, maybe cgd) should be implemented for real.
Revision 1.62.2.3: download - view: text, markup, annotated - select for diffs
Thu May 22 11:40:20 2014 UTC (10 years, 8 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.62.2.2: preferred, colored; branchpoint 1.62: preferred, colored; next MAIN 1.63: preferred, colored
Changes since revision 1.62.2.2: +45 -33
lines
sync with head.
for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
Revision 1.66.2.2: download - view: text, markup, annotated - select for diffs
Sun May 18 17:45:36 2014 UTC (10 years, 8 months ago) by rmind
Branches: rmind-smpnet
Diff to: previous 1.66.2.1: preferred, colored; branchpoint 1.66: preferred, colored; next MAIN 1.67: preferred, colored
Changes since revision 1.66.2.1: +33 -5
lines
sync with head
Revision 1.69: download - view: text, markup, annotated - select for diffs
Thu Apr 3 15:24:20 2014 UTC (10 years, 9 months ago) by christos
Branches: MAIN
CVS tags: yamt-pagecache-base9,
rmind-smpnet-nbase,
rmind-smpnet-base
Branch point for: tls-earlyentropy
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +15 -2
lines
add dkwedge_get_parent_name().
Revision 1.68: download - view: text, markup, annotated - select for diffs
Sun Mar 16 05:20:27 2014 UTC (10 years, 10 months ago) by dholland
Branches: MAIN
CVS tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15,
riastradh-drm2-base3
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +20 -5
lines
Change (mostly mechanically) every cdevsw/bdevsw I can find to use
designated initializers.
I have not built every extant kernel so I have probably broken at
least one build; however I've also found and fixed some wrong
cdevsw/bdevsw entries so even if so I think we come out ahead.
Revision 1.66.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 28 23:59:25 2013 UTC (11 years, 5 months ago) by rmind
Branches: rmind-smpnet
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +5 -4
lines
sync with head
Revision 1.67: download - view: text, markup, annotated - select for diffs
Sat Aug 3 18:30:57 2013 UTC (11 years, 5 months ago) by soren
Branches: MAIN
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +5 -4
lines
Don't complain about not being able to open empty removable media drives.
Revision 1.64.2.3: download - view: text, markup, annotated - select for diffs
Sun Jun 23 06:20:16 2013 UTC (11 years, 7 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.64.2.2: preferred, colored
Changes since revision 1.64.2.2: +11 -28
lines
resync from head
Revision 1.66: download - view: text, markup, annotated - select for diffs
Wed May 29 00:47:48 2013 UTC (11 years, 8 months ago) by christos
Branches: MAIN
CVS tags: riastradh-drm2-base2,
riastradh-drm2-base1,
riastradh-drm2-base,
riastradh-drm2
Branch point for: rmind-smpnet
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +11 -28
lines
phase 1 of disk geometry cleanup:
- centralize the geometry -> plist code so that we don't have
n useless copies of it.
Revision 1.64.2.2: download - view: text, markup, annotated - select for diffs
Sun Dec 2 05:46:40 2012 UTC (12 years, 1 month ago) by tls
Branches: tls-maxphys
Diff to: previous 1.64.2.1: preferred, colored
Changes since revision 1.64.2.1: +5 -3
lines
Don't pass NULL struct dkdriver to disk_init. That's seriously bogus.
Revision 1.64.2.1: download - view: text, markup, annotated - select for diffs
Tue Nov 20 03:02:00 2012 UTC (12 years, 2 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +4 -5
lines
Resync to 2012-11-19 00:00:00 UTC
Revision 1.62.2.2: download - view: text, markup, annotated - select for diffs
Tue Oct 30 17:20:55 2012 UTC (12 years, 2 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.62.2.1: preferred, colored; branchpoint 1.62: preferred, colored
Changes since revision 1.62.2.1: +34 -100
lines
sync with head
Revision 1.65: download - view: text, markup, annotated - select for diffs
Sat Oct 27 17:18:15 2012 UTC (12 years, 3 months ago) by chs
Branches: MAIN
CVS tags: yamt-pagecache-base8,
yamt-pagecache-base7,
yamt-pagecache-base6,
khorben-n900,
agc-symver-base,
agc-symver
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +4 -5
lines
split device_t/softc for all remaining drivers.
replace "struct device *" with "device_t".
use device_xname(), device_unit(), etc.
Revision 1.62.8.1: download - view: text, markup, annotated - select for diffs
Thu Jul 5 18:12:47 2012 UTC (12 years, 6 months ago) by riz
Branches: netbsd-6
CVS tags: netbsd-6-1-RELEASE,
netbsd-6-1-RC4,
netbsd-6-1-RC3,
netbsd-6-1-RC2,
netbsd-6-1-RC1,
netbsd-6-1-5-RELEASE,
netbsd-6-1-4-RELEASE,
netbsd-6-1-3-RELEASE,
netbsd-6-1-2-RELEASE,
netbsd-6-1-1-RELEASE,
netbsd-6-1,
netbsd-6-0-RELEASE,
netbsd-6-0-RC2,
netbsd-6-0-RC1,
netbsd-6-0-6-RELEASE,
netbsd-6-0-5-RELEASE,
netbsd-6-0-4-RELEASE,
netbsd-6-0-3-RELEASE,
netbsd-6-0-2-RELEASE,
netbsd-6-0-1-RELEASE,
netbsd-6-0,
matt-nb6-plus-nbase,
matt-nb6-plus-base,
matt-nb6-plus
Diff to: previous 1.62: preferred, colored; next MAIN 1.63: preferred, colored
Changes since revision 1.62: +32 -97
lines
Pull up following revision(s) (requested by mlelstv in ticket #402):
sys/dev/vnd.c: revision 1.221
sys/kern/init_main.c: revision 1.443
sys/kern/init_main.c: revision 1.444
sys/dev/dkwedge/dk.c: revision 1.64
sys/arch/x86/x86/x86_autoconf.c: revision 1.63
sys/arch/sparc64/sparc64/autoconf.c: revision 1.187
sys/sys/device.h: revision 1.141
sys/dev/dkwedge/dkwedge_bsdlabel.c: revision 1.17
sys/kern/kern_subr.c: revision 1.213
sys/arch/zaurus/zaurus/autoconf.c: revision 1.11
sys/arch/xen/x86/autoconf.c: revision 1.14
sys/sys/disk.h: revision 1.57
Use the label's packname to create wedge names instead of the classic
device names. Fall back to classic device names when the label has an
empty name or the default name 'fictitious'.
autodiscover wedges
Make detection of root on wedges (dk(4)) machine independent. Remove
MD code for x86, xen, sparc64.
Make detection of root on wedges (dk(4)) machine independent. Remove
MD code for zaurus.
Do not try to find the wedge we booted from if opendisk(booted_device)
failed.
Revision 1.64: download - view: text, markup, annotated - select for diffs
Sun Jun 10 17:05:19 2012 UTC (12 years, 7 months ago) by mlelstv
Branches: MAIN
Branch point for: tls-maxphys
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +32 -97
lines
Make detection of root on wedges (dk(4)) machine independent. Remove
MD code for x86, xen, sparc64.
Revision 1.62.2.1: download - view: text, markup, annotated - select for diffs
Wed May 23 10:07:55 2012 UTC (12 years, 8 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +5 -4
lines
sync with head.
Revision 1.62.6.1: download - view: text, markup, annotated - select for diffs
Sun Apr 29 23:04:49 2012 UTC (12 years, 8 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.62: preferred, colored; next MAIN 1.63: preferred, colored
Changes since revision 1.62: +5 -4
lines
sync to latest -current.
Revision 1.63: download - view: text, markup, annotated - select for diffs
Fri Apr 27 18:15:55 2012 UTC (12 years, 9 months ago) by drochner
Branches: MAIN
CVS tags: yamt-pagecache-base5,
jmcneill-usbmp-base9,
jmcneill-usbmp-base10
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +5 -4
lines
minor mostly cosmetical fixes: use designated type for device major
numbers, typo in comment, misuse of minor()
(the latter one is not cosmetical, but would only affect systems
with more than 256 disk wedges)
Revision 1.62: download - view: text, markup, annotated - select for diffs
Sat Jul 30 12:08:36 2011 UTC (13 years, 6 months ago) by jmcneill
Branches: MAIN
CVS tags: yamt-pagecache-base4,
yamt-pagecache-base3,
yamt-pagecache-base2,
yamt-pagecache-base,
netbsd-6-base,
jmcneill-usbmp-pre-base2,
jmcneill-usbmp-base8,
jmcneill-usbmp-base7,
jmcneill-usbmp-base6,
jmcneill-usbmp-base5,
jmcneill-usbmp-base4,
jmcneill-usbmp-base3,
jmcneill-usbmp-base2,
jmcneill-usbmp-base,
jmcneill-audiomp3-base,
jmcneill-audiomp3
Branch point for: yamt-pagecache,
netbsd-6,
jmcneill-usbmp
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +3 -3
lines
Add an FSILENT flag and use it to suppress "Medium Not Present" scsipi
spam when trying to access offline drives at boot.
Revision 1.60.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 23 14:19:58 2011 UTC (13 years, 7 months ago) by cherry
Branches: cherry-xenmp
Diff to: previous 1.60: preferred, colored; next MAIN 1.61: preferred, colored
Changes since revision 1.60: +6 -6
lines
Catchup with rmind-uvmplock merge.
Revision 1.61: download - view: text, markup, annotated - select for diffs
Sun Jun 12 03:35:52 2011 UTC (13 years, 7 months ago) by rmind
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +6 -6
lines
Welcome to 5.99.53! Merge rmind-uvmplock branch:
- Reorganize locking in UVM and provide extra serialisation for pmap(9).
New lock order: [vmpage-owner-lock] -> pmap-lock.
- Simplify locking in some pmap(9) modules by removing P->V locking.
- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share
the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).
- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner.
Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.
- Unify /dev/mem et al in MI code and provide required locking (removes
kernel-lock on some ports). Also, avoid cache-aliasing issues.
Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches
formed the core changes of this branch.
Revision 1.58.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:07:47 2011 UTC (13 years, 7 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.58: preferred, colored; next MAIN 1.59: preferred, colored
Changes since revision 1.58: +23 -7
lines
Sync with HEAD.
Revision 1.55.4.3: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:53:07 2011 UTC (13 years, 10 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.55.4.2: preferred, colored; branchpoint 1.55: preferred, colored; next MAIN 1.56: preferred, colored
Changes since revision 1.55.4.2: +41 -19
lines
sync with head
Revision 1.58.4.1: download - view: text, markup, annotated - select for diffs
Sat Mar 5 15:10:17 2011 UTC (13 years, 10 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.58: preferred, colored; next MAIN 1.59: preferred, colored
Changes since revision 1.58: +23 -7
lines
Sync with HEAD
Revision 1.60: download - view: text, markup, annotated - select for diffs
Thu Mar 3 03:39:08 2011 UTC (13 years, 10 months ago) by christos
Branches: MAIN
CVS tags: rmind-uvmplock-nbase,
rmind-uvmplock-base,
cherry-xenmp-base,
bouyer-quota2-nbase
Branch point for: cherry-xenmp
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +7 -3
lines
check rawvp before doing ioctl or strategy.
Revision 1.59: download - view: text, markup, annotated - select for diffs
Mon Feb 28 18:28:20 2011 UTC (13 years, 11 months ago) by christos
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +18 -6
lines
Make error checking consistent, possibly fixes PR/44652.
Revision 1.58: download - view: text, markup, annotated - select for diffs
Thu Dec 23 14:22:03 2010 UTC (14 years, 1 month ago) by mlelstv
Branches: MAIN
CVS tags: matt-mips64-premerge-20101231,
jruoho-x86intr-base,
bouyer-quota2-base
Branch point for: jruoho-x86intr,
bouyer-quota2
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +6 -4
lines
Make wedges aware of underlying physical block size.
Revision 1.42.6.3: download - view: text, markup, annotated - select for diffs
Sun Nov 21 18:50:17 2010 UTC (14 years, 2 months ago) by riz
Branches: netbsd-5
CVS tags: netbsd-5-2-RELEASE,
netbsd-5-2-RC1,
netbsd-5-2-3-RELEASE,
netbsd-5-2-2-RELEASE,
netbsd-5-2-1-RELEASE,
netbsd-5-2,
matt-nb5-pq3-base,
matt-nb5-pq3
Diff to: previous 1.42.6.2: preferred, colored; branchpoint 1.42: preferred, colored; next MAIN 1.43: preferred, colored
Changes since revision 1.42.6.2: +10 -8
lines
Pull up following revision(s) (requested by bouyer in ticket #1435):
sys/dev/dkwedge/dk.c: revision 1.57
Make sure to release sc_parent->dk_rawlock before calling
vn_close(sc->sc_parent->dk_rawvp). Avoids a lockdebug panic:
error: mutex_destroy: assertion failed: !MUTEX_OWNED(mtx->mtx_owner) && !MUTEX_HAS_WAITERS(mtx)
when the parent is a raidframe device.
See also:
http://mail-index.netbsd.org/tech-kern/2010/07/27/msg008612.html
Revision 1.55.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 17 06:46:05 2010 UTC (14 years, 5 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.55: preferred, colored; next MAIN 1.56: preferred, colored
Changes since revision 1.55: +18 -14
lines
Sync with HEAD.
Revision 1.37.4.8: download - view: text, markup, annotated - select for diffs
Wed Aug 11 22:53:20 2010 UTC (14 years, 5 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.7: preferred, colored; branchpoint 1.37: preferred, colored; next MAIN 1.38: preferred, colored
Changes since revision 1.37.4.7: +18 -14
lines
sync with head.
Revision 1.57: download - view: text, markup, annotated - select for diffs
Wed Aug 4 12:34:00 2010 UTC (14 years, 5 months ago) by bouyer
Branches: MAIN
CVS tags: yamt-nfs-mp-base11,
yamt-nfs-mp-base10,
uebayasi-xip-base4,
uebayasi-xip-base3,
uebayasi-xip-base2
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +16 -12
lines
Make sure to release sc_parent->dk_rawlock before calling
vn_close(sc->sc_parent->dk_rawvp). Avoids a lockdebug panic:
error: mutex_destroy: assertion failed: !MUTEX_OWNED(mtx->mtx_owner) && !MUTEX_HAS_WAITERS(mtx)
when the parent is a raidframe device.
See also:
http://mail-index.netbsd.org/tech-kern/2010/07/27/msg008612.html
Revision 1.55.4.2: download - view: text, markup, annotated - select for diffs
Sat Jul 3 01:19:35 2010 UTC (14 years, 6 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.55.4.1: preferred, colored; branchpoint 1.55: preferred, colored
Changes since revision 1.55.4.1: +4 -4
lines
sync with head
Revision 1.56: download - view: text, markup, annotated - select for diffs
Thu Jun 24 13:03:08 2010 UTC (14 years, 7 months ago) by hannken
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +4 -4
lines
Clean up vnode lock operations pass 2:
VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.
Welcome to 5.99.32.
Discussed on tech-kern.
Revision 1.42.12.1: download - view: text, markup, annotated - select for diffs
Wed Apr 21 00:27:35 2010 UTC (14 years, 9 months ago) by matt
Branches: matt-nb5-mips64
CVS tags: matt-nb5-mips64-premerge-20101231,
matt-nb5-mips64-k15
Diff to: previous 1.42: preferred, colored; next MAIN 1.43: preferred, colored
Changes since revision 1.42: +25 -7
lines
sync to netbsd-5
Revision 1.55.4.1: download - view: text, markup, annotated - select for diffs
Tue Mar 16 15:38:05 2010 UTC (14 years, 10 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +6 -6
lines
Change struct uvm_object::vmobjlock to be dynamically allocated with
mutex_obj_alloc(). It allows us to share the locks among UVM objects.
Revision 1.37.4.7: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:03:25 2010 UTC (14 years, 10 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.6: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.6: +33 -11
lines
sync with head
Revision 1.55: download - view: text, markup, annotated - select for diffs
Sun Feb 7 16:04:31 2010 UTC (14 years, 11 months ago) by mlelstv
Branches: MAIN
CVS tags: yamt-nfs-mp-base9,
uebayasi-xip-base1,
uebayasi-xip-base
Branch point for: uebayasi-xip,
rmind-uvmplock
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +4 -4
lines
d_psize routine returns a number of blocks or -1 on error.
d_dump routine returns 0 or an error code.
Revision 1.42.10.1: download - view: text, markup, annotated - select for diffs
Sat Jan 30 19:05:04 2010 UTC (14 years, 11 months ago) by snj
Branches: netbsd-5-0
CVS tags: netbsd-5-0-2-RELEASE
Diff to: previous 1.42: preferred, colored; next MAIN 1.43: preferred, colored
Changes since revision 1.42: +5 -3
lines
Pull up following revision(s) (requested by bouyer in ticket #1269):
sys/dev/dkwedge/dk.c: revision 1.53
sys/dev/cgd.c: revision 1.69
sys/dev/vnd.c: revision 1.206
struct buf::b_iodone is not called at splbio() any more.
Make sure non-MPsafe iodone callbacks raise the SPL as appropriate.
Fix buffer corruption issue I noticed in dk(4), and probable similar
issues in vnd(4) and cgd(4).
Revision 1.42.6.2: download - view: text, markup, annotated - select for diffs
Sat Jan 30 19:00:46 2010 UTC (14 years, 11 months ago) by snj
Branches: netbsd-5
CVS tags: netbsd-5-1-RELEASE,
netbsd-5-1-RC4,
netbsd-5-1-RC3,
netbsd-5-1-RC2,
netbsd-5-1-RC1,
netbsd-5-1-5-RELEASE,
netbsd-5-1-4-RELEASE,
netbsd-5-1-3-RELEASE,
netbsd-5-1-2-RELEASE,
netbsd-5-1-1-RELEASE,
netbsd-5-1
Diff to: previous 1.42.6.1: preferred, colored; branchpoint 1.42: preferred, colored
Changes since revision 1.42.6.1: +5 -3
lines
Pull up following revision(s) (requested by bouyer in ticket #1269):
sys/dev/cgd.c: revision 1.69
sys/dev/vnd.c: revision 1.206
sys/dev/dkwedge/dk.c: revision 1.53
struct buf::b_iodone is not called at splbio() any more.
Make sure non-MPsafe iodone callbacks raise the SPL as appropriate.
Fix buffer corruption issue I noticed in dk(4), and probable similar
issues in vnd(4) and cgd(4).
Revision 1.54: download - view: text, markup, annotated - select for diffs
Mon Jan 25 14:51:03 2010 UTC (15 years ago) by mlelstv
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +8 -4
lines
GPTs are defined in terms of physical blocks.
- Fix reading of GPT for devices with non-512byte sectors
- Fix bounds check to use DEV_BSIZE units.
Revision 1.53: download - view: text, markup, annotated - select for diffs
Sat Jan 23 18:31:04 2010 UTC (15 years ago) by bouyer
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +5 -3
lines
struct buf::b_iodone is not called at splbio() any more.
Make sure non-MPsafe iodone callbacks raise the SPL as appropriate.
Fix buffer corruption issue I noticed in dk(4), and probable similar
issues in vnd(4) and cgd(4).
Revision 1.42.6.1: download - view: text, markup, annotated - select for diffs
Sat Jan 9 01:25:10 2010 UTC (15 years ago) by snj
Branches: netbsd-5
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +22 -6
lines
Pull up following revision(s) (requested by jakllsch in ticket #1213):
sys/dev/dkwedge/dk.c: revision 1.52
Implement and use a dkminphys() that calls the parent device's minphys
function with b_dev temporarily adjusted to the parent device's dev_t.
Fixes PR/37390.
Revision 1.52: download - view: text, markup, annotated - select for diffs
Sun Dec 27 01:37:17 2009 UTC (15 years, 1 month ago) by jakllsch
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +22 -6
lines
Implement and use a dkminphys() that calls the parent device's minphys
function with b_dev temporarily adjusted to the parent device's dev_t.
Fixes PR/37390.
Revision 1.37.4.6: download - view: text, markup, annotated - select for diffs
Wed Sep 16 13:37:46 2009 UTC (15 years, 4 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.5: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.5: +73 -16
lines
sync with head
Revision 1.51: download - view: text, markup, annotated - select for diffs
Tue Sep 8 21:14:33 2009 UTC (15 years, 4 months ago) by pooka
Branches: MAIN
CVS tags: yamt-nfs-mp-base8,
matt-premerge-20091211,
jym-xensuspend-nbase
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +4 -16
lines
dkwedge_list() is currently called only from ioctl routines where
l == curlwp. Since there is no perceived case where we'd ever want
to copy the list to non-curlwp, simplify the code a bit.
(the struct lwp * argument could probably be dropped too, but
that's another commit)
Revision 1.50: download - view: text, markup, annotated - select for diffs
Mon Sep 7 13:59:38 2009 UTC (15 years, 4 months ago) by pooka
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +4 -2
lines
grow some _KERNEL_POT
Revision 1.49: download - view: text, markup, annotated - select for diffs
Sun Sep 6 16:18:55 2009 UTC (15 years, 4 months ago) by pooka
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +69 -2
lines
Remove autoconf dependency on vfs and dk:
opendisk() -> kern/subr_disk_open.c
config_handle_wedges -> dev/dkwedge/dk.c
Revision 1.37.4.5: download - view: text, markup, annotated - select for diffs
Wed Aug 19 18:47:05 2009 UTC (15 years, 5 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.4: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.4: +132 -32
lines
sync with head.
Revision 1.48: download - view: text, markup, annotated - select for diffs
Thu Aug 6 16:00:49 2009 UTC (15 years, 5 months ago) by haad
Branches: MAIN
CVS tags: yamt-nfs-mp-base7
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +43 -3
lines
Add support for DIOCGDISKINFO for wedges. This fixes regression after my
DIOCGDISKINFO commit to fsck/partutil.c.
Tested by me and adegroot@.
Revision 1.43.2.2: download - view: text, markup, annotated - select for diffs
Thu Jul 23 23:31:46 2009 UTC (15 years, 6 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.43.2.1: preferred, colored; branchpoint 1.43: preferred, colored; next MAIN 1.44: preferred, colored
Changes since revision 1.43.2.1: +112 -39
lines
Sync with HEAD.
Revision 1.47: download - view: text, markup, annotated - select for diffs
Tue Jul 21 19:41:00 2009 UTC (15 years, 6 months ago) by dyoung
Branches: MAIN
CVS tags: jymxensuspend-base
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +91 -31
lines
Extract a lot of code from dkwedge_del(), and move it to dkwedge_detach()
to create a comprehensive detachment hook. Let that hook run at
shutdown. Now, 'drvctl -d dk0' actually deletes a wedge if it is
not in-use (otherwise fails w/ EBUSY), and wedges are gracefully
detached from their "parent" at shutdown.
Revision 1.37.4.4: download - view: text, markup, annotated - select for diffs
Sat Jul 18 14:53:00 2009 UTC (15 years, 6 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.3: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.3: +23 -10
lines
sync with head.
Revision 1.46: download - view: text, markup, annotated - select for diffs
Thu Jul 2 00:56:48 2009 UTC (15 years, 6 months ago) by dyoung
Branches: MAIN
CVS tags: yamt-nfs-mp-base6
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +23 -10
lines
Extract subroutine dklastclose(). This is a step toward detachable
dk(4).
Revision 1.37.4.3: download - view: text, markup, annotated - select for diffs
Sat May 16 10:41:20 2009 UTC (15 years, 8 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.2: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.2: +6 -6
lines
sync with head
Revision 1.43.2.1: download - view: text, markup, annotated - select for diffs
Wed May 13 17:19:16 2009 UTC (15 years, 8 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +6 -6
lines
Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
Revision 1.45: download - view: text, markup, annotated - select for diffs
Tue May 12 14:19:40 2009 UTC (15 years, 8 months ago) by cegger
Branches: MAIN
CVS tags: yamt-nfs-mp-base5,
yamt-nfs-mp-base4,
jym-xensuspend-base
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +6 -6
lines
struct device * -> device_t, no functional changes intended.
Revision 1.44: download - view: text, markup, annotated - select for diffs
Tue May 12 12:12:26 2009 UTC (15 years, 8 months ago) by cegger
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +3 -3
lines
struct cfdata * -> cfdata_t, no functional changes intended.
Revision 1.37.4.2: download - view: text, markup, annotated - select for diffs
Mon May 4 08:12:36 2009 UTC (15 years, 8 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.1: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.1: +21 -17
lines
sync with head.
Revision 1.42.4.1: download - view: text, markup, annotated - select for diffs
Mon Jan 19 13:17:52 2009 UTC (16 years ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.42: preferred, colored; next MAIN 1.43: preferred, colored
Changes since revision 1.42: +6 -6
lines
Sync with HEAD.
Revision 1.33.6.6: download - view: text, markup, annotated - select for diffs
Sat Jan 17 13:28:53 2009 UTC (16 years ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.33.6.5: preferred, colored; branchpoint 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33.6.5: +4 -4
lines
Sync with HEAD.
Revision 1.43: download - view: text, markup, annotated - select for diffs
Tue Jan 13 13:35:53 2009 UTC (16 years ago) by yamt
Branches: MAIN
CVS tags: yamt-nfs-mp-base3,
nick-hppapmap-base4,
nick-hppapmap-base3,
nick-hppapmap-base2,
nick-hppapmap-base,
mjf-devfs2-base
Branch point for: jym-xensuspend
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +6 -6
lines
g/c BUFQ_FOO() macros and use bufq_foo() directly.
Revision 1.33.6.5: download - view: text, markup, annotated - select for diffs
Sun Jun 29 09:33:06 2008 UTC (16 years, 7 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.33.6.4: preferred, colored; branchpoint 1.33: preferred, colored
Changes since revision 1.33.6.4: +1 -0
lines
Sync with HEAD.
Revision 1.39.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 23 04:31:01 2008 UTC (16 years, 7 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.39: preferred, colored; next MAIN 1.40: preferred, colored
Changes since revision 1.39: +17 -13
lines
Sync w/ -current. 34 merge conflicts to follow.
Revision 1.41.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 18 16:33:09 2008 UTC (16 years, 7 months ago) by simonb
Branches: simonb-wapbl
Diff to: previous 1.41: preferred, colored; next MAIN 1.42: preferred, colored
Changes since revision 1.41: +3 -2
lines
Sync with head.
Revision 1.42: download - view: text, markup, annotated - select for diffs
Tue Jun 17 14:53:10 2008 UTC (16 years, 7 months ago) by reinoud
Branches: MAIN
CVS tags: wrstuden-revivesa-base-4,
wrstuden-revivesa-base-3,
wrstuden-revivesa-base-2,
wrstuden-revivesa-base-1,
wrstuden-revivesa-base,
simonb-wapbl-nbase,
simonb-wapbl-base,
netbsd-5-base,
netbsd-5-0-RELEASE,
netbsd-5-0-RC4,
netbsd-5-0-RC3,
netbsd-5-0-RC2,
netbsd-5-0-RC1,
netbsd-5-0-1-RELEASE,
matt-nb5-mips64-u2-k2-k4-k7-k8-k9,
matt-nb5-mips64-u1-k1-k5,
matt-nb5-mips64-premerge-20091211,
matt-nb4-mips64-k7-u2a-k9b,
matt-mips64-base2,
haad-nbase2,
haad-dm-base2,
haad-dm-base1,
haad-dm-base,
haad-dm,
ad-audiomp2-base,
ad-audiomp2
Branch point for: nick-hppapmap,
netbsd-5-0,
netbsd-5,
matt-nb5-mips64
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +3 -2
lines
Mark a buffer `busy` in getnewbuf() when it came from the pool_cache since
its not on a free list.
Also change buf_init() to not automatically mark buffers `busy' since this
only makes sense for bufcache buffers.
Mark all buf_init'd buffers 'busy' on the places where they ought to be
flagged as such to not confuse the buffer cache.
Fixes PR 38923.
Revision 1.33.6.4: download - view: text, markup, annotated - select for diffs
Thu Jun 5 19:14:35 2008 UTC (16 years, 7 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.33.6.3: preferred, colored; branchpoint 1.33: preferred, colored
Changes since revision 1.33.6.3: +13 -13
lines
Sync with HEAD.
Also fix build.
Revision 1.37.2.2: download - view: text, markup, annotated - select for diffs
Wed Jun 4 02:05:10 2008 UTC (16 years, 7 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.37.2.1: preferred, colored; branchpoint 1.37: preferred, colored; next MAIN 1.38: preferred, colored
Changes since revision 1.37.2.1: +16 -13
lines
sync with head
Revision 1.41: download - view: text, markup, annotated - select for diffs
Tue Jun 3 12:14:08 2008 UTC (16 years, 7 months ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-base4,
yamt-pf42-base3
Branch point for: simonb-wapbl
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +15 -15
lines
dkwedge_read: don't place struct buf on the stack.
Revision 1.33.6.3: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:23:15 2008 UTC (16 years, 7 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.33.6.2: preferred, colored; branchpoint 1.33: preferred, colored
Changes since revision 1.33.6.2: +24 -23
lines
Sync with HEAD.
Revision 1.40: download - view: text, markup, annotated - select for diffs
Sun Jun 1 11:38:26 2008 UTC (16 years, 7 months ago) by chris
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +6 -3
lines
Call buf_destroy when finished with an on-stack struct buf.
Spotted by LOCKDEBUG, because the condvars were already initialised.
Revision 1.37.2.1: download - view: text, markup, annotated - select for diffs
Sun May 18 12:33:35 2008 UTC (16 years, 8 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +3 -9
lines
sync with head.
Revision 1.37.4.1: download - view: text, markup, annotated - select for diffs
Fri May 16 02:23:57 2008 UTC (16 years, 8 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +3 -9
lines
sync with head.
Revision 1.39: download - view: text, markup, annotated - select for diffs
Sat May 3 08:23:41 2008 UTC (16 years, 8 months ago) by plunky
Branches: MAIN
CVS tags: yamt-pf42-base2,
yamt-nfs-mp-base2,
hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +3 -2
lines
after the "struct disk" is finished with, it should be
destroyed with disk_destroy(9) to stave off LOCKDEBUG
panics.
Revision 1.38: download - view: text, markup, annotated - select for diffs
Mon Apr 28 20:23:48 2008 UTC (16 years, 9 months ago) by martin
Branches: MAIN
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +2 -9
lines
Remove clause 3 and 4 from TNF licenses
Revision 1.37: download - view: text, markup, annotated - select for diffs
Thu Apr 10 09:31:51 2008 UTC (16 years, 9 months ago) by agc
Branches: MAIN
CVS tags: yamt-pf42-baseX,
yamt-pf42-base,
yamt-nfs-mp-base
Branch point for: yamt-pf42,
yamt-nfs-mp
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +3 -3
lines
Fix a minor nit in a comment
Revision 1.33.6.2: download - view: text, markup, annotated - select for diffs
Sun Apr 6 09:58:50 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.33.6.1: preferred, colored; branchpoint 1.33: preferred, colored
Changes since revision 1.33.6.1: +13 -2
lines
- after some discussion with agc@ i agreed it would be a good idea to move
device_unregister_* to device_deregister_* to be more like the pmf(9)
functions, especially since a lot of the time the function calls are next
to each other.
- add device_register_name() support for dk(4).
Revision 1.36: download - view: text, markup, annotated - select for diffs
Sun Apr 6 08:33:31 2008 UTC (16 years, 9 months ago) by cegger
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +18 -14
lines
use aprint_*_dev and device_xname
Revision 1.33.6.1: download - view: text, markup, annotated - select for diffs
Thu Apr 3 12:42:39 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +6 -6
lines
Sync with HEAD.
Revision 1.7.2.10: download - view: text, markup, annotated - select for diffs
Mon Mar 24 09:38:49 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.9: preferred, colored; next MAIN 1.8: preferred, colored
Changes since revision 1.7.2.9: +5 -5
lines
sync with head.
Revision 1.33.2.1: download - view: text, markup, annotated - select for diffs
Mon Mar 24 07:15:15 2008 UTC (16 years, 10 months ago) by keiichi
Branches: keiichi-mipv6
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +3 -3
lines
sync with head.
Revision 1.28.6.3: download - view: text, markup, annotated - select for diffs
Sun Mar 23 02:04:36 2008 UTC (16 years, 10 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.28.6.2: preferred, colored; branchpoint 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28.6.2: +5 -3
lines
sync with HEAD
Revision 1.35: download - view: text, markup, annotated - select for diffs
Fri Mar 21 21:54:59 2008 UTC (16 years, 10 months ago) by ad
Branches: MAIN
CVS tags: yamt-lazymbuf-base15,
yamt-lazymbuf-base14,
ad-socklock-base1
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +5 -5
lines
Catch up with descriptor handling changes. See kern_descrip.c revision
1.173 for details.
Revision 1.7.2.9: download - view: text, markup, annotated - select for diffs
Mon Mar 17 09:14:40 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.8: preferred, colored
Changes since revision 1.7.2.8: +3 -3
lines
sync with head.
Revision 1.34: download - view: text, markup, annotated - select for diffs
Tue Mar 4 13:51:18 2008 UTC (16 years, 10 months ago) by cube
Branches: MAIN
CVS tags: matt-armv6-nbase,
keiichi-mipv6-nbase,
keiichi-mipv6-base
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +3 -3
lines
Split device_t/softc. Well, there's not much to split there, as the
device_t didn't contain the softc anyway.
This driver should be re-structured so it doesn't have to manage its own
set of softcs.
Revision 1.29.4.3: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:05:37 2008 UTC (16 years, 11 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.29.4.2: preferred, colored; branchpoint 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29.4.2: +17 -10
lines
Sync with HEAD.
Revision 1.7.2.8: download - view: text, markup, annotated - select for diffs
Mon Feb 4 09:23:20 2008 UTC (16 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.7: preferred, colored
Changes since revision 1.7.2.7: +4 -2
lines
sync with head.
Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Jan 30 15:42:52 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
CVS tags: nick-net80211-sync-base,
nick-net80211-sync,
mjf-devfs-base,
hpcarm-cleanup-base
Branch point for: mjf-devfs2,
keiichi-mipv6
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +4 -2
lines
Hold v_interlock when adjust v_writecount.
Revision 1.7.2.7: download - view: text, markup, annotated - select for diffs
Mon Jan 21 09:42:42 2008 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.6: preferred, colored
Changes since revision 1.7.2.6: +18 -11
lines
sync with head
Revision 1.28.6.2: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:52:31 2008 UTC (17 years ago) by matt
Branches: matt-armv6
Diff to: previous 1.28.6.1: preferred, colored; branchpoint 1.28: preferred, colored
Changes since revision 1.28.6.1: +21 -14
lines
sync with HEAD
Revision 1.31.2.1: download - view: text, markup, annotated - select for diffs
Wed Jan 2 21:53:59 2008 UTC (17 years ago) by bouyer
Branches: bouyer-xeni386
CVS tags: bouyer-xeni386-merge1
Diff to: previous 1.31: preferred, colored; next MAIN 1.32: preferred, colored
Changes since revision 1.31: +15 -10
lines
Sync with HEAD
Revision 1.32: download - view: text, markup, annotated - select for diffs
Wed Jan 2 11:48:37 2008 UTC (17 years ago) by ad
Branches: MAIN
CVS tags: matt-armv6-base,
bouyer-xeni386-nbase,
bouyer-xeni386-base
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +15 -10
lines
Merge vmlocking2 to head.
Revision 1.29.4.2: download - view: text, markup, annotated - select for diffs
Thu Dec 27 00:44:59 2007 UTC (17 years, 1 month ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.29.4.1: preferred, colored; branchpoint 1.29: preferred, colored
Changes since revision 1.29.4.1: +5 -3
lines
Sync with HEAD.
Revision 1.30.2.2: download - view: text, markup, annotated - select for diffs
Wed Dec 26 21:39:24 2007 UTC (17 years, 1 month ago) by ad
Branches: vmlocking2
Diff to: previous 1.30.2.1: preferred, colored; branchpoint 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30.2.1: +5 -3
lines
Sync with head.
Revision 1.30.4.1: download - view: text, markup, annotated - select for diffs
Tue Dec 11 15:25:38 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-kmem
Diff to: previous 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30: +5 -3
lines
sync with head.
Revision 1.31: download - view: text, markup, annotated - select for diffs
Sun Dec 9 20:27:56 2007 UTC (17 years, 1 month ago) by jmcneill
Branches: MAIN
CVS tags: yamt-kmem-base3,
yamt-kmem-base2,
vmlocking2-base3,
cube-autoconf-base,
cube-autoconf
Branch point for: bouyer-xeni386
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +5 -3
lines
Merge jmcneill-pm branch.
Revision 1.29.4.1: download - view: text, markup, annotated - select for diffs
Sat Dec 8 18:19:26 2007 UTC (17 years, 1 month ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +5 -5
lines
Sync with HEAD.
Revision 1.28.4.4: download - view: text, markup, annotated - select for diffs
Sat Dec 8 16:21:09 2007 UTC (17 years, 1 month ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.28.4.3: preferred, colored; branchpoint 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28.4.3: +4 -4
lines
Rename pnp(9) -> pmf(9), as requested by many.
Revision 1.7.2.6: download - view: text, markup, annotated - select for diffs
Fri Dec 7 17:29:42 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.5: preferred, colored
Changes since revision 1.7.2.5: +5 -5
lines
sync with head
Revision 1.30.2.1: download - view: text, markup, annotated - select for diffs
Tue Dec 4 13:02:57 2007 UTC (17 years, 1 month ago) by ad
Branches: vmlocking2
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +15 -10
lines
Pull the vmlocking changes into a new branch.
Revision 1.28.4.3: download - view: text, markup, annotated - select for diffs
Tue Nov 27 19:37:03 2007 UTC (17 years, 2 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.28.4.2: preferred, colored; branchpoint 1.28: preferred, colored
Changes since revision 1.28.4.2: +5 -5
lines
Sync with HEAD. amd64 Xen support needs testing.
Revision 1.30: download - view: text, markup, annotated - select for diffs
Mon Nov 26 19:01:37 2007 UTC (17 years, 2 months ago) by pooka
Branches: MAIN
CVS tags: yamt-kmem-base,
vmlocking2-base2,
vmlocking2-base1,
vmlocking-nbase,
reinoud-bufcleanup-nbase,
reinoud-bufcleanup-base,
jmcneill-pm-base
Branch point for: yamt-kmem,
vmlocking2
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +5 -5
lines
Remove the "struct lwp *" argument from all VFS and VOP interfaces.
The general trend is to remove it from all kernel interfaces and
this is a start. In case the calling lwp is desired, curlwp should
be used.
quick consensus on tech-kern
Revision 1.28.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:25:57 2007 UTC (17 years, 2 months ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -3
lines
sync with HEAD
Revision 1.28.4.2: download - view: text, markup, annotated - select for diffs
Tue Nov 6 14:27:16 2007 UTC (17 years, 2 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.28.4.1: preferred, colored; branchpoint 1.28: preferred, colored
Changes since revision 1.28.4.1: +5 -3
lines
Refactor PNP API:
- Make suspend/resume directly a device functionality. It consists of
three layers (class logic, device logic, bus logic), all of them being
optional. This replaces D0/D3 transitions.
- device_is_active returns true if the device was not disabled and was
not suspended (even partially), device_is_enabled returns true if the
device was enabled.
- Change pnp_global_transition into pnp_system_suspend and
pnp_system_resume. Before running any suspend/resume handlers, check
that all currently attached devices support power management and bail
out otherwise. The latter is not done for the shutdown/panic case.
- Make the former bus-specific generic network handlers a class handler.
- Make PNP message like volume up/down/toogle PNP events. Each device
can register what events they are interested in and whether the handler
should be global or not.
- Introduce device_active API for devices to mark themselve in use from
either the system or the device. Use this to implement the idle handling
for audio and input devices. This is intended to replace most ad-hoc
watchdogs as well.
- Fix somes situations in which audio resume would lose mixer settings.
- Make USB host controllers better deal with suspend in the light of
shared interrupts.
- Flush filesystem cache on suspend.
- Flush disk caches on suspend. Put ATA disks into standby on suspend as
well.
- Adopt drivers to use the new PNP API.
- Fix a critical bug in the generic cardbus layer that made D0->D3
break.
- Fix ral(4) to set if_stop.
- Convert cbb(4) to the new PNP API.
- Apply the PCI Express SCI fix on resume again.
Revision 1.7.2.5: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:30:13 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.4: preferred, colored
Changes since revision 1.7.2.4: +3 -3
lines
sync with head.
Revision 1.28.4.1: download - view: text, markup, annotated - select for diffs
Fri Oct 26 15:44:23 2007 UTC (17 years, 3 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -3
lines
Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
Revision 1.28.8.1: download - view: text, markup, annotated - select for diffs
Sun Oct 14 11:48:06 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-x86pmap
Diff to: previous 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28: +3 -3
lines
sync with head.
Revision 1.22.2.10: download - view: text, markup, annotated - select for diffs
Tue Oct 9 15:22:10 2007 UTC (17 years, 3 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.9: preferred, colored; branchpoint 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22.2.9: +4 -3
lines
Sync with head.
Revision 1.29: download - view: text, markup, annotated - select for diffs
Mon Oct 8 16:41:11 2007 UTC (17 years, 3 months ago) by ad
Branches: MAIN
CVS tags: yamt-x86pmap-base4,
yamt-x86pmap-base3,
vmlocking-base,
jmcneill-base,
bouyer-xenamd64-base2,
bouyer-xenamd64-base,
bouyer-xenamd64
Branch point for: mjf-devfs
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -3
lines
Merge disk init changes from the vmlocking branch. These seperate init /
destroy of 'struct disk' from attach / detach.
Revision 1.7.2.4: download - view: text, markup, annotated - select for diffs
Mon Sep 3 14:33:34 2007 UTC (17 years, 4 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.3: preferred, colored
Changes since revision 1.7.2.3: +144 -100
lines
sync with head.
Revision 1.22.2.9: download - view: text, markup, annotated - select for diffs
Fri Aug 24 23:28:36 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.8: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.8: +6 -5
lines
Sync with buffer cache locking changes. See buf.h/vfs_bio.c for details.
Some minor portions are incomplete and needs to be verified as a whole.
Revision 1.22.2.8: download - view: text, markup, annotated - select for diffs
Mon Aug 20 18:16:12 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.7: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.7: +37 -38
lines
- Alter disk attach/detach to fix a panic when closing a vnd device.
- Sync with HEAD.
Revision 1.22.2.7: download - view: text, markup, annotated - select for diffs
Sun Aug 19 19:24:23 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.6: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.6: +14 -11
lines
- Back out the biodone() changes.
- Eliminate B_ERROR (from HEAD).
Revision 1.26.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 15 13:48:15 2007 UTC (17 years, 5 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26: +68 -101
lines
Sync with HEAD.
Revision 1.28.10.2: download - view: text, markup, annotated - select for diffs
Sun Jul 29 12:50:21 2007 UTC (17 years, 6 months ago) by ad
Branches: matt-mips64
Diff to: previous 1.28.10.1: preferred, colored; branchpoint 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28.10.1: +1304 -0
lines
It's not a good idea for device drivers to modify b_flags, as they don't
need to understand the locking around that field. Instead of setting
B_ERROR, set b_error instead. b_error is 'owned' by whoever completes
the I/O request.
Revision 1.28.10.1
Sun Jul 29 12:50:20 2007 UTC (17 years, 6 months ago) by ad
Branches: matt-mips64
FILE REMOVED
Changes since revision 1.28: +0 -1304
lines
file dk.c was added on branch matt-mips64 on 2007-07-29 12:50:21 +0000
Revision 1.28: download - view: text, markup, annotated - select for diffs
Sun Jul 29 12:50:20 2007 UTC (17 years, 6 months ago) by ad
Branches: MAIN
CVS tags: yamt-x86pmap-base2,
yamt-x86pmap-base,
nick-csl-alignment-base5,
matt-mips64-base,
hpcarm-cleanup
Branch point for: yamt-x86pmap,
matt-mips64,
matt-armv6,
jmcneill-pm
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +3 -7
lines
It's not a good idea for device drivers to modify b_flags, as they don't
need to understand the locking around that field. Instead of setting
B_ERROR, set b_error instead. b_error is 'owned' by whoever completes
the I/O request.
Revision 1.27: download - view: text, markup, annotated - select for diffs
Sat Jul 21 19:51:47 2007 UTC (17 years, 6 months ago) by ad
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +67 -96
lines
Replace some uses of lockmgr().
Revision 1.22.2.6: download - view: text, markup, annotated - select for diffs
Sun Jul 15 15:52:42 2007 UTC (17 years, 6 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.5: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.5: +95 -63
lines
Sync with head.
Revision 1.22.4.1: download - view: text, markup, annotated - select for diffs
Wed Jul 11 20:05:25 2007 UTC (17 years, 6 months ago) by mjf
Branches: mjf-ufs-trans
Diff to: previous 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22: +85 -8
lines
Sync with head.
Revision 1.26: download - view: text, markup, annotated - select for diffs
Mon Jul 9 21:00:32 2007 UTC (17 years, 6 months ago) by ad
Branches: MAIN
CVS tags: nick-csl-alignment-base,
mjf-ufs-trans-base
Branch point for: nick-csl-alignment
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +3 -3
lines
Merge some of the less invasive changes from the vmlocking branch:
- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
Revision 1.22.2.5: download - view: text, markup, annotated - select for diffs
Sun Jul 1 21:47:44 2007 UTC (17 years, 6 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.4: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.4: +3 -3
lines
Adapt to callout API change.
Revision 1.25: download - view: text, markup, annotated - select for diffs
Sun Jun 24 01:43:34 2007 UTC (17 years, 7 months ago) by dyoung
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +43 -2
lines
Extract common code from i386, xen, and sparc64, creating
config_handle_wedges() and read_disk_sectors(). On x86, handle_wedges()
is a thin wrapper for config_handle_wedges(). Share opendisk()
across architectures.
Add kernel code in support of specifying a root partition by wedge
name. E.g., root specifications "wedge:wd0a", "wedge:David's Root
Volume" are possible. (Patches for config(1) coming soon.)
In support of moving disks between architectures (esp. i386 <->
evbmips), I've written a routine convertdisklabel() that ensures
that the raw partition is at RAW_DISK by following these steps:
0 If we have read a disklabel that has a RAW_PART with
p_offset == 0 and p_size != 0, then use that raw partition.
1 If we have read a disklabel that has both partitions 'c'
and 'd', and RAW_PART has p_offset != 0 or p_size == 0,
but the other partition is suitable for a raw partition
(p_offset == 0, p_size != 0), then swap the two partitions
and use the new raw partition.
2 If the architecture's raw partition is 'd', and if there
is no partition 'd', but there is a partition 'c' that
is suitable for a raw partition, then copy partition 'c'
to partition 'd'.
3 Determine the drive's last sector, using either the
d_secperunit the drive reported, or by guessing (0x1fffffff).
If we cannot read the drive's last sector, then fail.
4 If we have read a disklabel that has no partition slot
RAW_PART, then create a partition RAW_PART. Make it span
the whole drive.
5 If there are fewer than MAXPARTITIONS partitions,
then "slide" the unsuitable raw partition RAW_PART, and
subsequent partitions, into partition slots RAW_PART+1
and subsequent slots. Create a raw partition at RAW_PART.
Make it span the whole drive.
The convertdisklabel() procedure can probably stand to be simplified,
but it ought to deal with all but an extraordinarily broken disklabel,
now.
i386: compiled and tested, sparc64: compiled, evbmips: compiled.
Revision 1.22.2.4: download - view: text, markup, annotated - select for diffs
Sat Jun 23 18:06:02 2007 UTC (17 years, 7 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.3: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.3: +10 -5
lines
- Lock v_cleanblkhd, v_dirtyblkhd, v_numoutput with the vnode's interlock.
Get rid of global_v_numoutput_lock. Partially incomplete as the buffer
cache locking doesn't work very well and needs an overhaul.
- Some changes to try and make softdep MP safe. Untested.
Revision 1.22.2.3: download - view: text, markup, annotated - select for diffs
Sun Jun 17 21:30:56 2007 UTC (17 years, 7 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.2: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.2: +3 -4
lines
- Increase the number of thread priorities from 128 to 256. How the space
is set up is to be revisited.
- Implement soft interrupts as kernel threads. A generic implementation
is provided, with hooks for fast-path MD code that can run the interrupt
threads over the top of other threads executing in the kernel.
- Split vnode::v_flag into three fields, depending on how the flag is
locked (by the interlock, by the vnode lock, by the file system).
- Miscellaneous locking fixes and improvements.
Revision 1.24: download - view: text, markup, annotated - select for diffs
Sat Jun 16 18:11:33 2007 UTC (17 years, 7 months ago) by christos
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +3 -3
lines
Unwedge the previous change. Always increment the number of rawopens if the
open is successful.
Revision 1.23: download - view: text, markup, annotated - select for diffs
Sat Jun 9 02:26:27 2007 UTC (17 years, 7 months ago) by dyoung
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +43 -7
lines
Fix two bugs:
1 In dkopen(), do not leave dk_rawopens > 0 if the open ultimately
failed for some reason.
2 Add a dkdump() implementation by Martin Husemann for writing
system dumps to wedges. Tiny modifications by me. Lightly tested
on an evbmips box.
Revision 1.22.2.2: download - view: text, markup, annotated - select for diffs
Sun May 13 17:36:23 2007 UTC (17 years, 8 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22.2.1: preferred, colored; branchpoint 1.22: preferred, colored
Changes since revision 1.22.2.1: +11 -19
lines
- Pass the error number and residual count to biodone(), and let it handle
setting error indicators. Prepare to eliminate B_ERROR.
- Add a flag argument to brelse() to be set into the buf's flags, instead
of doing it directly. Typically used to set B_INVAL.
- Add a "struct cpu_info *" argument to kthread_create(), to be used to
create bound threads. Change "bool mpsafe" to "int flags".
- Allow exit of LWPs in the IDL state when (l != curlwp).
- More locking fixes & conversion to the new API.
Revision 1.22.2.1: download - view: text, markup, annotated - select for diffs
Tue Mar 13 17:50:28 2007 UTC (17 years, 10 months ago) by ad
Branches: vmlocking
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +43 -26
lines
Pull in the initial set of changes for the vmlocking branch.
Revision 1.21.2.1: download - view: text, markup, annotated - select for diffs
Mon Mar 12 05:53:10 2007 UTC (17 years, 10 months ago) by rmind
Branches: yamt-idlelwp
Diff to: previous 1.21: preferred, colored; next MAIN 1.22: preferred, colored
Changes since revision 1.21: +4 -4
lines
Sync with HEAD.
Revision 1.22: download - view: text, markup, annotated - select for diffs
Sun Mar 4 06:01:45 2007 UTC (17 years, 10 months ago) by christos
Branches: MAIN
CVS tags: yamt-idlelwp-base8,
thorpej-atomic-base,
thorpej-atomic,
reinoud-bufcleanup
Branch point for: vmlocking,
mjf-ufs-trans
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +4 -4
lines
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
Revision 1.7.2.3: download - view: text, markup, annotated - select for diffs
Mon Feb 26 09:10:00 2007 UTC (17 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.2: preferred, colored
Changes since revision 1.7.2.2: +4 -6
lines
sync with head.
Revision 1.21: download - view: text, markup, annotated - select for diffs
Thu Feb 15 16:04:12 2007 UTC (17 years, 11 months ago) by yamt
Branches: MAIN
CVS tags: ad-audiomp-base,
ad-audiomp
Branch point for: yamt-idlelwp
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +4 -6
lines
dkwedge_discover: open a device as read-only.
Revision 1.7.2.2: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:47:57 2006 UTC (18 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7.2.1: preferred, colored
Changes since revision 1.7.2.1: +18 -15
lines
sync with head.
Revision 1.18.2.3: download - view: text, markup, annotated - select for diffs
Sun Dec 10 07:17:01 2006 UTC (18 years, 1 month ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.18.2.2: preferred, colored; branchpoint 1.18: preferred, colored; next MAIN 1.19: preferred, colored
Changes since revision 1.18.2.2: +14 -14
lines
sync with head.
Revision 1.17.2.1: download - view: text, markup, annotated - select for diffs
Sat Nov 18 21:34:04 2006 UTC (18 years, 2 months ago) by ad
Branches: newlock2
Diff to: previous 1.17: preferred, colored; next MAIN 1.18: preferred, colored
Changes since revision 1.17: +11 -8
lines
Sync with head.
Revision 1.20: download - view: text, markup, annotated - select for diffs
Thu Nov 16 01:32:50 2006 UTC (18 years, 2 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base5,
yamt-splraiseipl-base4,
yamt-splraiseipl-base3,
wrstuden-fixsa-newbase,
wrstuden-fixsa-base-1,
wrstuden-fixsa-base,
wrstuden-fixsa,
post-newlock2-merge,
newlock2-nbase,
newlock2-base,
netbsd-4-base,
netbsd-4-0-RELEASE,
netbsd-4-0-RC5,
netbsd-4-0-RC4,
netbsd-4-0-RC3,
netbsd-4-0-RC2,
netbsd-4-0-RC1,
netbsd-4-0-1-RELEASE,
netbsd-4-0,
netbsd-4,
matt-nb4-arm-base,
matt-nb4-arm
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +14 -14
lines
__unused removal on arguments; approved by core.
Revision 1.18.2.2: download - view: text, markup, annotated - select for diffs
Sun Oct 22 06:05:35 2006 UTC (18 years, 3 months ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.18.2.1: preferred, colored; branchpoint 1.18: preferred, colored
Changes since revision 1.18.2.1: +1262 -0
lines
sync with head
Revision 1.19: download - view: text, markup, annotated - select for diffs
Thu Oct 12 01:30:57 2006 UTC (18 years, 3 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base2
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +15 -12
lines
- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
Revision 1.18.2.1
Mon Sep 18 07:47:13 2006 UTC (18 years, 4 months ago) by yamt
Branches: yamt-splraiseipl
FILE REMOVED
Changes since revision 1.18: +0 -1259
lines
file dk.c was added on branch yamt-splraiseipl on 2006-10-22 06:05:35 +0000
Revision 1.18: download - view: text, markup, annotated - select for diffs
Mon Sep 18 07:47:13 2006 UTC (18 years, 4 months ago) by uebayasi
Branches: MAIN
CVS tags: yamt-splraiseipl-base
Branch point for: yamt-splraiseipl
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +3 -3
lines
Typo in comment.
Revision 1.11.2.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 02:49:44 2006 UTC (18 years, 4 months ago) by rpaulo
Branches: rpaulo-netinet-merge-pcb
Diff to: previous 1.11: preferred, colored; next MAIN 1.12: preferred, colored
Changes since revision 1.11: +54 -24
lines
sync with head
Revision 1.12.2.4: download - view: text, markup, annotated - select for diffs
Sun Sep 3 15:23:56 2006 UTC (18 years, 4 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.12.2.3: preferred, colored; branchpoint 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12.2.3: +8 -8
lines
sync with head.
Revision 1.17: download - view: text, markup, annotated - select for diffs
Thu Aug 24 21:57:11 2006 UTC (18 years, 5 months ago) by dbj
Branches: MAIN
CVS tags: yamt-pdpolicy-base9,
yamt-pdpolicy-base8,
rpaulo-netinet-merge-pcb-base
Branch point for: newlock2
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +8 -8
lines
avoid diagnostic panic if both blk and chr wedge are open at the same time
Revision 1.12.2.3: download - view: text, markup, annotated - select for diffs
Fri Aug 11 15:43:59 2006 UTC (18 years, 5 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.12.2.2: preferred, colored; branchpoint 1.12: preferred, colored
Changes since revision 1.12.2.2: +3 -3
lines
sync with head
Revision 1.16: download - view: text, markup, annotated - select for diffs
Fri Jul 21 16:48:48 2006 UTC (18 years, 6 months ago) by ad
Branches: MAIN
CVS tags: yamt-pdpolicy-base7,
abandoned-netbsd-4-base,
abandoned-netbsd-4
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +3 -3
lines
- Use the LWP cached credentials where sane.
- Minor cosmetic changes.
Revision 1.7.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 21 15:02:46 2006 UTC (18 years, 7 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +68 -38
lines
sync with head.
Revision 1.11.4.2: download - view: text, markup, annotated - select for diffs
Thu Jun 1 22:36:20 2006 UTC (18 years, 7 months ago) by kardel
Branches: simonb-timecounters
CVS tags: simonb-timcounters-final
Diff to: previous 1.11.4.1: preferred, colored; branchpoint 1.11: preferred, colored; next MAIN 1.12: preferred, colored
Changes since revision 1.11.4.1: +4 -3
lines
Sync with head.
Revision 1.12.6.1: download - view: text, markup, annotated - select for diffs
Wed May 24 15:50:07 2006 UTC (18 years, 8 months ago) by tron
Branches: peter-altq
Diff to: previous 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12: +34 -16
lines
Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
Revision 1.12.2.2: download - view: text, markup, annotated - select for diffs
Wed May 24 10:57:37 2006 UTC (18 years, 8 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.12.2.1: preferred, colored; branchpoint 1.12: preferred, colored
Changes since revision 1.12.2.1: +4 -3
lines
sync with head.
Revision 1.15: download - view: text, markup, annotated - select for diffs
Sun May 14 21:42:27 2006 UTC (18 years, 8 months ago) by elad
Branches: MAIN
CVS tags: yamt-pdpolicy-base6,
yamt-pdpolicy-base5,
simonb-timecounters-base,
gdamore-uart-base,
gdamore-uart,
chap-midi-nbase,
chap-midi-base,
chap-midi
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +4 -3
lines
integrate kauth.
Revision 1.12.4.3: download - view: text, markup, annotated - select for diffs
Sat May 6 23:31:27 2006 UTC (18 years, 8 months ago) by christos
Branches: elad-kernelauth
Diff to: previous 1.12.4.2: preferred, colored; branchpoint 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12.4.2: +3 -2
lines
- Move kauth_cred_t declaration to <sys/types.h>
- Cleanup struct ucred; forward declarations that are unused.
- Don't include <sys/kauth.h> in any header, but include it in the c files
that need it.
Approved by core.
Revision 1.11.4.1: download - view: text, markup, annotated - select for diffs
Sat Apr 22 11:38:51 2006 UTC (18 years, 9 months ago) by simonb
Branches: simonb-timecounters
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +46 -17
lines
Sync with head.
Revision 1.12.4.2: download - view: text, markup, annotated - select for diffs
Wed Apr 19 03:24:34 2006 UTC (18 years, 9 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.12.4.1: preferred, colored; branchpoint 1.12: preferred, colored
Changes since revision 1.12.4.1: +32 -15
lines
sync with head.
Revision 1.12.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 11 11:55:13 2006 UTC (18 years, 9 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +32 -15
lines
sync with head
Revision 1.14: download - view: text, markup, annotated - select for diffs
Thu Apr 6 17:55:43 2006 UTC (18 years, 9 months ago) by thorpej
Branches: MAIN
CVS tags: yamt-pdpolicy-base4,
elad-kernelauth-base
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +7 -13
lines
A couple of fixes from dbj@:
- dkwedge_del(): Don't compute a minor number based on partitions, because
wedges don't have partitions. Just provide the unit number to vdevgone().
- dkopen(): Make sure we release all of the locks we've acquired should
opening the parent device fail.
Revision 1.13: download - view: text, markup, annotated - select for diffs
Thu Apr 6 17:17:45 2006 UTC (18 years, 9 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +27 -4
lines
Implement dksize().
Revision 1.12.4.1: download - view: text, markup, annotated - select for diffs
Wed Mar 8 01:44:48 2006 UTC (18 years, 10 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +3 -3
lines
Adapt to kernel authorization KPI.
Revision 1.12: download - view: text, markup, annotated - select for diffs
Wed Mar 1 12:38:13 2006 UTC (18 years, 11 months ago) by yamt
Branches: MAIN
CVS tags: yamt-pdpolicy-base3,
yamt-pdpolicy-base2,
yamt-pdpolicy-base,
peter-altq-base
Branch point for: yamt-pdpolicy,
peter-altq,
elad-kernelauth
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +16 -4
lines
merge yamt-uio_vmspace branch.
- use vmspace rather than proc or lwp where appropriate.
the latter is more natural to specify an address space.
(and less likely to be abused for random purposes.)
- fix a swdmover race.
Revision 1.10.2.2: download - view: text, markup, annotated - select for diffs
Sun Jan 15 10:02:48 2006 UTC (19 years ago) by yamt
Branches: yamt-uio_vmspace
Diff to: previous 1.10.2.1: preferred, colored; next MAIN 1.11: preferred, colored
Changes since revision 1.10.2.1: +4 -4
lines
sync with head.
Revision 1.11: download - view: text, markup, annotated - select for diffs
Wed Jan 4 10:13:05 2006 UTC (19 years ago) by yamt
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5
Branch point for: simonb-timecounters,
rpaulo-netinet-merge-pcb
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +4 -4
lines
- add simple functions to allocate/free a buffer for i/o.
- make bufpool static.
Revision 1.10.2.1: download - view: text, markup, annotated - select for diffs
Sat Dec 31 12:37:20 2005 UTC (19 years ago) by yamt
Branches: yamt-uio_vmspace
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +16 -4
lines
adapt some random parts of kernel to uio_vmspace.
Revision 1.10: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:21:20 2005 UTC (19 years, 1 month ago) by christos
Branches: MAIN
Branch point for: yamt-uio_vmspace
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +12 -12
lines
merge ktrace-lwp.
Revision 1.2.2.5: download - view: text, markup, annotated - select for diffs
Thu Nov 10 14:03:54 2005 UTC (19 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.2.2.4: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2.2.4: +15 -15
lines
Sync with HEAD. Here we go again...
Revision 1.9: download - view: text, markup, annotated - select for diffs
Sat Oct 15 17:29:12 2005 UTC (19 years, 3 months ago) by yamt
Branches: MAIN
CVS tags: yamt-vop-base3,
yamt-vop-base2,
yamt-vop-base,
yamt-vop,
yamt-readahead-pervnode,
yamt-readahead-perfile,
yamt-readahead-base3,
yamt-readahead-base2,
yamt-readahead-base,
yamt-readahead,
thorpej-vnode-attr-base,
thorpej-vnode-attr,
ktrace-lwp-base
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +12 -12
lines
- change the way to specify a bufq strategy. (by string rather than by number)
- rather than embedding bufq_state in driver softc,
have a pointer to the former.
- move bufq related functions from kern/subr_disk.c to kern/subr_bufq.c.
- rename method to strategy for consistency.
- move some definitions which don't need to be exposed to the rest of kernel
from sys/bufq.h to sys/bufq_impl.h.
(is it better to move it to kern/ or somewhere?)
- fix some obvious breakage in dev/qbus/ts.c. (not tested)
Revision 1.8: download - view: text, markup, annotated - select for diffs
Wed Sep 28 18:25:19 2005 UTC (19 years, 4 months ago) by nathanw
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +3 -3
lines
Set sc->sc_cfdata.cf_fstate to FSTATE_STAR rather than FSTATE_NOTFOUND
so that config_detach() doesn't panic.
(XXX this points to some disagreement between config_attach_pseudo()
and config_detach() over the correct role of pseudo-device cfdata)
Revision 1.7: download - view: text, markup, annotated - select for diffs
Sun May 29 22:13:33 2005 UTC (19 years, 8 months ago) by christos
Branches: MAIN
Branch point for: yamt-lazymbuf
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +4 -4
lines
avoid variable shadowing.
Revision 1.5.4.1: download - view: text, markup, annotated - select for diffs
Fri Apr 29 11:28:46 2005 UTC (19 years, 9 months ago) by kent
Branches: kent-audio2
Diff to: previous 1.5: preferred, colored; next MAIN 1.6: preferred, colored
Changes since revision 1.5: +6 -6
lines
sync with -current
Revision 1.5.6.1: download - view: text, markup, annotated - select for diffs
Sat Mar 19 08:33:58 2005 UTC (19 years, 10 months ago) by yamt
Branches: yamt-km
Diff to: previous 1.5: preferred, colored; next MAIN 1.6: preferred, colored
Changes since revision 1.5: +6 -6
lines
sync with head. xen and whitespace. xen part is not finished.
Revision 1.2.2.4: download - view: text, markup, annotated - select for diffs
Fri Mar 4 16:41:05 2005 UTC (19 years, 10 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.2.2.3: preferred, colored
Changes since revision 1.2.2.3: +6 -6
lines
Sync with HEAD.
Hi Perry!
Revision 1.6: download - view: text, markup, annotated - select for diffs
Sun Feb 27 00:26:59 2005 UTC (19 years, 11 months ago) by perry
Branches: MAIN
CVS tags: yamt-km-base4,
yamt-km-base3,
netbsd-3-base,
netbsd-3-1-RELEASE,
netbsd-3-1-RC4,
netbsd-3-1-RC3,
netbsd-3-1-RC2,
netbsd-3-1-RC1,
netbsd-3-1-1-RELEASE,
netbsd-3-1,
netbsd-3-0-RELEASE,
netbsd-3-0-RC6,
netbsd-3-0-RC5,
netbsd-3-0-RC4,
netbsd-3-0-RC3,
netbsd-3-0-RC2,
netbsd-3-0-RC1,
netbsd-3-0-3-RELEASE,
netbsd-3-0-2-RELEASE,
netbsd-3-0-1-RELEASE,
netbsd-3-0,
netbsd-3,
kent-audio2-base
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +6 -6
lines
nuke trailing whitespace
Revision 1.2.2.3: download - view: text, markup, annotated - select for diffs
Tue Nov 2 07:51:19 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.2.2.2: preferred, colored
Changes since revision 1.2.2.2: +86 -16
lines
Sync with HEAD.
Revision 1.5: download - view: text, markup, annotated - select for diffs
Thu Oct 28 07:07:40 2004 UTC (20 years, 3 months ago) by yamt
Branches: MAIN
CVS tags: yamt-km-base2,
yamt-km-base,
kent-audio1-beforemerge,
kent-audio1-base,
kent-audio1
Branch point for: yamt-km,
kent-audio2
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +4 -2
lines
move buffer queue related stuffs from buf.h to their own header, bufq.h.
Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue Oct 26 22:50:16 2004 UTC (20 years, 3 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +14 -2
lines
Implement the DIOCCACHESYNC ioctl; we just pass it along to the parent.
Revision 1.3: download - view: text, markup, annotated - select for diffs
Sat Oct 23 17:16:45 2004 UTC (20 years, 3 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +72 -16
lines
- Adjust minor number usage for wedges; minor number directly maps to
unit now. Don't pretend wedges have "partitions".
- Fix a buglet related to opening char and block devices of a wedge
at the same time.
- Add dkwedge_set_bootwedge(), that MD code can call to set booted_device
and booted_wedge appropriately when MD code knows the parent disk and
the start/size of the wedge that was booted from.
Revision 1.2.2.2: download - view: text, markup, annotated - select for diffs
Tue Oct 19 15:56:45 2004 UTC (20 years, 3 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.2.2.1: preferred, colored
Changes since revision 1.2.2.1: +1159 -0
lines
Sync with HEAD
Revision 1.2.2.1
Fri Oct 15 04:42:09 2004 UTC (20 years, 3 months ago) by skrll
Branches: ktrace-lwp
FILE REMOVED
Changes since revision 1.2: +0 -1159
lines
file dk.c was added on branch ktrace-lwp on 2004-10-19 15:56:45 +0000
Revision 1.2: download - view: text, markup, annotated - select for diffs
Fri Oct 15 04:42:09 2004 UTC (20 years, 3 months ago) by thorpej
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +116 -17
lines
Use config_attach_pseudo() to create device instances in the device
tree for created wedges. This is necessary for setroot().
Revision 1.1: download - view: text, markup, annotated - select for diffs
Mon Oct 4 01:07:25 2004 UTC (20 years, 3 months ago) by thorpej
Branches: MAIN
Move wedge code to a subdirectory, as suggested by Christos.
CVSweb <webmaster@jp.NetBSD.org>