Page MenuHomeFreeBSD

christos (Christos Margiolis)
User

Projects

User Details

User Since
Jul 2 2021, 4:03 PM (176 w, 5 d)

Recent Activity

Yesterday

christos updated the diff for D47459: snd_dummy: Fix callout(9) races.

Fix one more race by moving pcm_unregister() after callout_stop() and
callout_drain().

Wed, Nov 20, 7:16 PM

Mon, Nov 18

christos added a comment to D47665: sound: Add initial sanity check in pcm_unregister().

Actually, we can now make the function void.

Mon, Nov 18, 10:09 PM
christos added a comment to D47665: sound: Add initial sanity check in pcm_unregister().

Actually, we can now make the function void.

Mon, Nov 18, 9:52 PM
christos requested review of D47665: sound: Add initial sanity check in pcm_unregister().
Mon, Nov 18, 9:51 PM
christos closed D47663: Document __FreeBSD_version 1500027.
Mon, Nov 18, 9:40 PM
christos committed R9:3b840c7732f3: Document __FreeBSD_version 1500027 (authored by christos).
Document __FreeBSD_version 1500027
Mon, Nov 18, 9:40 PM
christos requested review of D47664: sound: Remove unused CHN_F_SILENCE.
Mon, Nov 18, 9:38 PM
christos added a comment to D47663: Document __FreeBSD_version 1500027.

I don't have a doc commit bit so if someone can commit it I'd appreciate it.

Mon, Nov 18, 8:54 PM
christos requested review of D47663: Document __FreeBSD_version 1500027.
Mon, Nov 18, 8:53 PM
christos added inline comments to D47638: sound: Implement AFMT_FLOAT support.
Mon, Nov 18, 7:49 PM
christos added inline comments to D47638: sound: Implement AFMT_FLOAT support.
Mon, Nov 18, 7:47 PM
christos added a comment to D47639: beep(1): Use AFMT_FLOAT.

The reason this program exists is to provide a console beep (^G) in the absence of a PC speaker (with a bit more plumbing). At the end of the day even for that use performance isn't really going to matter -- but also the docs recommend against using AFMT_FLOAT.

I can see that this is useful for testing the kernel support, though.

Mon, Nov 18, 7:39 PM
christos added a comment to D47639: beep(1): Use AFMT_FLOAT.

I'd suggest we not do this, at least not before quantifying the performance impact of float support (see comment in D47638).

Mon, Nov 18, 7:29 PM

Sun, Nov 17

christos updated the diff for D47462: sound: Fix hot-unload panics.

Assert that we enter pcm_killchans() with !PCM_REGISTERED.

Sun, Nov 17, 12:51 AM

Sat, Nov 16

christos requested review of D47639: beep(1): Use AFMT_FLOAT.
Sat, Nov 16, 6:18 PM
christos requested review of D47638: sound: Implement AFMT_FLOAT support.
Sat, Nov 16, 6:15 PM
christos added inline comments to D47461: sound: Fix chn_trigger() and vchan_trigger() races.
Sat, Nov 16, 5:58 PM
christos added inline comments to D47559: sound: Remove CHN_F_SLEEPING.
Sat, Nov 16, 5:02 PM
christos added inline comments to D47559: sound: Remove CHN_F_SLEEPING.
Sat, Nov 16, 4:59 PM
christos added inline comments to D47461: sound: Fix chn_trigger() and vchan_trigger() races.
Sat, Nov 16, 4:20 PM
christos added a comment to D47462: sound: Fix hot-unload panics.

The refactored implementation of pcm_killchans() relies on the SD_F_REGISTERED flag (unset) to prevent addition of new channels, right? Should we make this explicit via assert or a comment?

Sat, Nov 16, 2:29 PM
christos updated the diff for D47559: sound: Remove CHN_F_SLEEPING.

Address Ed's comment.

Sat, Nov 16, 12:41 PM

Thu, Nov 14

christos added a comment to D47559: sound: Remove CHN_F_SLEEPING.

Great. @markj what do you think?

Thu, Nov 14, 4:35 PM
christos added a reverting change for rG5aece3be1c84: sound: Make device registration more intuitive: rGb64867e332f8: Revert "sound: Make device registration more intuitive".
Thu, Nov 14, 4:33 PM
christos committed rGb64867e332f8: Revert "sound: Make device registration more intuitive" (authored by christos).
Revert "sound: Make device registration more intuitive"
Thu, Nov 14, 4:33 PM
christos abandoned D47540: Bump __FreeBSD_version for sound(4) KPI changes.

Abandoning since __FreeBSD_version was bumped already. Also reverted KPI changes for stable/14: https://cgit.freebsd.org/src/commit/?h=stable/14&id=b64867e332f8196cb61947fc189ff108ca1065db

Thu, Nov 14, 4:33 PM
christos added a reverting change for D47325: sound: Make device registration more intuitive: rGb64867e332f8: Revert "sound: Make device registration more intuitive".
Thu, Nov 14, 4:33 PM
christos added a comment to D47559: sound: Remove CHN_F_SLEEPING.

@dougm @pho Could you please let me know if the panic persists with this patch?

Thu, Nov 14, 1:08 PM

Wed, Nov 13

christos updated the diff for D47559: sound: Remove CHN_F_SLEEPING.

Minor fix in CHN_F_EXCLUSIVE.

Wed, Nov 13, 10:35 PM
christos requested review of D47559: sound: Remove CHN_F_SLEEPING.
Wed, Nov 13, 10:33 PM
christos updated the diff for D47461: sound: Fix chn_trigger() and vchan_trigger() races.

Address Mark's comment.

Wed, Nov 13, 9:56 PM
christos added inline comments to D47461: sound: Fix chn_trigger() and vchan_trigger() races.
Wed, Nov 13, 9:54 PM
christos added inline comments to D47461: sound: Fix chn_trigger() and vchan_trigger() races.
Wed, Nov 13, 7:53 PM
christos updated the diff for D47540: Bump __FreeBSD_version for sound(4) KPI changes.

Use correct version value.

Wed, Nov 13, 7:13 PM
christos updated the summary of D47540: Bump __FreeBSD_version for sound(4) KPI changes.
Wed, Nov 13, 7:12 PM
christos requested review of D47540: Bump __FreeBSD_version for sound(4) KPI changes.
Wed, Nov 13, 6:52 PM
christos added a comment to D47462: sound: Fix hot-unload panics.

Bump.

Wed, Nov 13, 6:10 PM

Sun, Nov 10

christos abandoned D47460: snd_dummy: Avoid NULL dereferences in dummy_chan_io().
Sun, Nov 10, 4:22 PM
christos added a comment to D47460: snd_dummy: Avoid NULL dereferences in dummy_chan_io().

There may be cases where NULL checks like these eliminate some crashes but leave races that still exist but are harder to hit.

Sun, Nov 10, 4:03 PM
christos added a comment to D47460: snd_dummy: Avoid NULL dereferences in dummy_chan_io().

When are these fields null?

Sun, Nov 10, 3:50 PM

Thu, Nov 7

christos added a comment to D47325: sound: Make device registration more intuitive.
In D47325#1082805, @jah wrote:
In D47325#1082791, @jah wrote:

These appear to be both KPI and KBI-breaking changes, so shouldn't they have included a __FreeBSD_version bump? Also, it looks like you MFCed these to stable/14, don't we at least frown on that kind of breakage in a -stable branch?

I am pretty confident these changes should not cause any breakage in the -stable branch. Also all the drivers that use this KPI have been updated in this patch.

There can be out-of-tree drivers that use the pcm_* KPIs; I still maintain a fairly old one: multimedia/cx88.
It's usually difficult-to-impossible to know with absolute certainty that no one anywhere is relying on a given KPI/KBI, which is why we usually bump the version when making changes like this. That at least gives out-of-tree consumers a version number to check in their code and prevents unpredictable behavior from loading kmods built against the prior KBI.

Thu, Nov 7, 5:45 PM
christos added a comment to D47325: sound: Make device registration more intuitive.
In D47325#1082791, @jah wrote:

These appear to be both KPI and KBI-breaking changes, so shouldn't they have included a __FreeBSD_version bump? Also, it looks like you MFCed these to stable/14, don't we at least frown on that kind of breakage in a -stable branch?

Thu, Nov 7, 5:04 PM
christos added a comment to D47462: sound: Fix hot-unload panics.

@dev_submerge.ch Can you also test whether this patch along with all the other patches applied (D47459, D47460, D47461, D47463) fix the hot-unload (or any other) panics?

Seems good, for me the panics we had are not reproducible anymore. Didn't have time yet to look at the code, though.

Thu, Nov 7, 4:43 PM

Wed, Nov 6

christos accepted D47467: sound: Include ai2s and davbus for PowerPC.
Wed, Nov 6, 5:47 PM

Tue, Nov 5

christos committed rG136c2b5a8e7c: sound: Remove unused pcm_channel->data fields (authored by christos).
sound: Remove unused pcm_channel->data fields
Tue, Nov 5, 9:46 PM
christos committed rG5aece3be1c84: sound: Make device registration more intuitive (authored by christos).
sound: Make device registration more intuitive
Tue, Nov 5, 9:46 PM
christos committed rG9e36026dc3ea: sound: Move sndstat_register() call to pcm_setstatus() (authored by christos).
sound: Move sndstat_register() call to pcm_setstatus()
Tue, Nov 5, 9:46 PM
christos committed rGc874fcc4ca62: sound: Remove early SD_F_SIMPLEX and SD_F_AUTOVCHAN assignments (authored by christos).
sound: Remove early SD_F_SIMPLEX and SD_F_AUTOVCHAN assignments
Tue, Nov 5, 9:46 PM
christos committed rG00c066cd575d: sound: Move sysctl and /dev/dspX creation to pcm_setstatus() (authored by christos).
sound: Move sysctl and /dev/dspX creation to pcm_setstatus()
Tue, Nov 5, 9:46 PM
christos committed rG3dace161c237: sound: Retire pcm_veto_load (authored by christos).
sound: Retire pcm_veto_load
Tue, Nov 5, 9:46 PM
christos added a comment to D47462: sound: Fix hot-unload panics.

@dev_submerge.ch Can you also test whether this patch along with all the other patches applied (D47459, D47460, D47461, D47463) fix the hot-unload panics (or any other panics)?

Tue, Nov 5, 9:31 PM
christos abandoned D46847: sound: Fix hot-unload page fault.

Continued in D47462.

Tue, Nov 5, 9:28 PM
christos requested review of D47463: sound: Remove PCM_DETACHING(), SD_F_DETACHING and SD_F_DYING.
Tue, Nov 5, 9:27 PM
christos requested review of D47462: sound: Fix hot-unload panics.
Tue, Nov 5, 9:27 PM
christos requested review of D47461: sound: Fix chn_trigger() and vchan_trigger() races.
Tue, Nov 5, 9:27 PM
christos requested review of D47460: snd_dummy: Avoid NULL dereferences in dummy_chan_io().
Tue, Nov 5, 9:27 PM
christos requested review of D47459: snd_dummy: Fix callout(9) races.
Tue, Nov 5, 9:27 PM

Sun, Nov 3

christos closed D47325: sound: Make device registration more intuitive.

Committed.

Sun, Nov 3, 7:07 PM
christos committed rG829951f857b7: sound: Remove unused pcm_channel->data fields (authored by christos).
sound: Remove unused pcm_channel->data fields
Sun, Nov 3, 7:05 PM
christos closed D47360: sound: Remove unused pcm_channel->data fields.
Sun, Nov 3, 7:05 PM
christos committed rG516a9c0212b0: sound: Make device registration more intuitive (authored by christos).
sound: Make device registration more intuitive
Sun, Nov 3, 7:05 PM
christos committed rG3a7d40c69262: sound: Remove early SD_F_SIMPLEX and SD_F_AUTOVCHAN assignments (authored by christos).
sound: Remove early SD_F_SIMPLEX and SD_F_AUTOVCHAN assignments
Sun, Nov 3, 7:05 PM
christos closed D47324: sound: Remove early SD_F_SIMPLEX and SD_F_AUTOVCHAN assignments.
Sun, Nov 3, 7:05 PM
christos committed rG181a31d83490: sound: Move sndstat_register() call to pcm_setstatus() (authored by christos).
sound: Move sndstat_register() call to pcm_setstatus()
Sun, Nov 3, 7:05 PM
christos closed D47323: sound: Move sndstat_register() call to pcm_setstatus().
Sun, Nov 3, 7:05 PM
christos closed D47322: sound: Move sysctl and /dev/dspX creation to pcm_setstatus().
Sun, Nov 3, 7:05 PM
christos committed rG66f3eb14e955: sound: Move sysctl and /dev/dspX creation to pcm_setstatus() (authored by christos).
sound: Move sysctl and /dev/dspX creation to pcm_setstatus()
Sun, Nov 3, 7:04 PM
christos closed D47280: sound: Retire pcm_veto_load.
Sun, Nov 3, 7:04 PM
christos committed rG98cd27c8e134: sound: Retire pcm_veto_load (authored by christos).
sound: Retire pcm_veto_load
Sun, Nov 3, 7:04 PM
christos accepted D47399: sound: Include snd_cmi only for i386 and amd64.

LGTM, feel free to propose the patch for ai2s and davbus. :)

Sun, Nov 3, 5:27 PM
christos added a comment to D47325: sound: Make device registration more intuitive.

Not in scope for this patch, but pcm_addchan() may return an error and I wonder whether / how the drivers should handle this error case?

Sun, Nov 3, 10:04 AM

Thu, Oct 31

christos retitled D47360: sound: Remove unused pcm_channel->data fields from sound: Remove unused pcm_channel->data1/2 fields to sound: Remove unused pcm_channel->data fields.
Thu, Oct 31, 5:41 PM
christos retitled D47360: sound: Remove unused pcm_channel->data fields from sound: Remove unused pcm_channel->dead1/2 fields to sound: Remove unused pcm_channel->data1/2 fields.
Thu, Oct 31, 5:38 PM
christos requested review of D47360: sound: Remove unused pcm_channel->data fields.
Thu, Oct 31, 5:38 PM

Tue, Oct 29

christos added a comment to D47325: sound: Make device registration more intuitive.

Update arm drivers as well.

On a side note, could you check that we didn't miss sys/arm in any other sound driver refactoring? We didn't change them in D43467 for example, although that may not be applicable if these are single instance device drivers.

Tue, Oct 29, 5:27 PM
christos updated the diff for D47325: sound: Make device registration more intuitive.

Update arm drivers as well.

Tue, Oct 29, 5:01 PM
christos added a comment to D47325: sound: Make device registration more intuitive.

What about the sound drivers under sys/arm? They seem to still reference pcm_setstatus(), did I miss something?

Tue, Oct 29, 4:53 PM
christos accepted D47330: snd_hdsp(4): Add sysctls to select analog signal levels..
Tue, Oct 29, 3:50 PM
christos accepted D47328: service(8): Allow for passing no arguments to the service script.

Approved.

Tue, Oct 29, 3:32 PM · rc

Mon, Oct 28

christos added a comment to D47325: sound: Make device registration more intuitive.

https://docs.freebsd.org/en/books/arch-handbook/sound/ will have to be updated as well.

Mon, Oct 28, 10:38 PM
christos requested review of D47325: sound: Make device registration more intuitive.
Mon, Oct 28, 10:31 PM
christos requested review of D47324: sound: Remove early SD_F_SIMPLEX and SD_F_AUTOVCHAN assignments.
Mon, Oct 28, 10:31 PM
christos requested review of D47323: sound: Move sndstat_register() call to pcm_setstatus().
Mon, Oct 28, 10:30 PM
christos requested review of D47322: sound: Move sysctl and /dev/dspX creation to pcm_setstatus().
Mon, Oct 28, 10:30 PM
christos updated the diff for D47280: sound: Retire pcm_veto_load.

Address Mark's comment.

Mon, Oct 28, 9:55 PM
christos accepted D47264: rc: Remove rc_fast_and_loose.
Mon, Oct 28, 5:49 PM · rc

Sun, Oct 27

christos committed rG6bfac3b2a335: sound: Retire channel refcount (authored by christos).
sound: Retire channel refcount
Sun, Oct 27, 4:33 PM
christos committed rGbf3a355a874a: sound: Remove redundant refcount checks in vchan_setnew() (authored by christos).
sound: Remove redundant refcount checks in vchan_setnew()
Sun, Oct 27, 4:33 PM
christos committed rGf3449b1a2115: sound: Untangle dsp_cdevs[] and dsp_unit2name() confusion (authored by christos).
sound: Untangle dsp_cdevs[] and dsp_unit2name() confusion
Sun, Oct 27, 4:33 PM
christos committed rG26524f063fca: sound: Change PCMDIR_* numbering (authored by christos).
sound: Change PCMDIR_* numbering
Sun, Oct 27, 4:33 PM
christos committed rG32a2994b4487: sound: Use DSP_REGISTERED in dsp_clone() (authored by christos).
sound: Use DSP_REGISTERED in dsp_clone()
Sun, Oct 27, 4:33 PM
christos committed rGace5484e48c9: sound: Call DSP_REGISTERED before PCM_DETACHING (authored by christos).
sound: Call DSP_REGISTERED before PCM_DETACHING
Sun, Oct 27, 4:33 PM

Fri, Oct 25

christos added a comment to D47280: sound: Retire pcm_veto_load.

Also note that pcm_register() does not really touch the root feeder in the first place.

Fri, Oct 25, 12:07 PM
christos requested review of D47280: sound: Retire pcm_veto_load.
Fri, Oct 25, 12:06 PM
christos committed rG9a6cf27583ff: sound: Retire channel refcount (authored by christos).
sound: Retire channel refcount
Fri, Oct 25, 11:37 AM
christos committed rG43c0b593c2c3: sound: Remove redundant refcount checks in vchan_setnew() (authored by christos).
sound: Remove redundant refcount checks in vchan_setnew()
Fri, Oct 25, 11:37 AM
christos closed D47269: sound: Retire channel refcount.
Fri, Oct 25, 11:37 AM
christos closed D47268: sound: Remove redundant refcount checks in vchan_setnew().
Fri, Oct 25, 11:37 AM
christos committed rG7224e9f2d4af: mididump(1): Initial revision (authored by christos).
mididump(1): Initial revision
Fri, Oct 25, 11:34 AM

Thu, Oct 24

christos committed rGb1bb6934bb87: sound: Fix build error in chm_mkname() KASSERT (authored by christos).
sound: Fix build error in chm_mkname() KASSERT
Thu, Oct 24, 12:57 PM