From nobody Mon Jun 9 09:15:21 2025 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4bG5rx4FQnz5xp2b for ; Mon, 09 Jun 2025 09:16:33 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bG5rx3TYsz3TN7 for ; Mon, 09 Jun 2025 09:16:33 +0000 (UTC) (envelope-from wulf@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1749460593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=KU39nrJLQpkilThRMAbC0GtzrGorCWHLzC2ZZ55PB48=; b=oGu8O4IjoNJOgMsEHSxwUqGZB9ButRVPPLtqnGPIx0zM8Iqewyy382W0e8FMbrI7JH36/b vly8SGh3QLkig0slu6nDAvUOOX8sAsTpRcwNc3Kkg2mE8Ujj3rTU6ZahpTqCt9zYDfj6fU jypwZJzvpZ4sx+PDd2Kvp4s8mZlI1zfcbUgCiChkJxQZJuPEuFhgBWhdE+FMhuxmqRzEiy ORwu/kcO+xYkY0UWfu9cUzm54TYIEPzFaqzX6L5dAlmPlC+dXipJfz3Ff+LhKwGDvnAnnF v07CGuaowQAw8FZzm/3/GHNwljYo8tRdEymaJxqvMrPgTB2sKQmjaPHgr6QXPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1749460593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=KU39nrJLQpkilThRMAbC0GtzrGorCWHLzC2ZZ55PB48=; b=XHgIJ2fZNArAYchZAy2msRp4jSnRkI8elAM3KasMoU+claO6j1bbmy8q2axJOcW+mxJ1ZC 6uu2/035E78vAaR2C5auFnFLUKSi2pVazZi8suuTqH4BlWr2DJgxuLAubgFM91ScYxm5qv d1jefur5r8rhiXjWZvp9q0DpoooomGt6ewvIIIQ2sYY7ZrdKay/WIFh8YLw8za1eBpgbNj fZegURg28TjYm9JXysCDRLDBmX/s4xn/XC6+m6zZXpkFRV0ajiJQ3AziI0lwANA3bOOeLE kNAAezL5GZmpBE5F6QOCUWvHlutXGSgi+qMcH8taa+qqALfLZ6rjotsXZWpbMw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1749460593; a=rsa-sha256; cv=none; b=NR+K49ZEwQtJYPerWmsHPH4ltQV0w5S7TwEwwxeFUBhG0oyvUIJ3EH4IWkKR9Ev9NKZOu9 uyE3/5PAh8OW50DaQp9sdS32B3k6X+HvqUESLsBV5bBh7R4LpH1Q5QSHvkOTUrfT70Iu+r JGFD+4Kr/34bXZDOCvK+O8DV4vo63HQ7faF85jy5c1MIPEY+oT6clspim+x/VHPV4Xu4HF Z7cCItwedSt49KEV7yQrtaHs7f0hVf/tk3cEEwXQ8rmQneP6EDde4WWy67pPNrGFV6qk6z k35x/E/WA+syO6+y3Ak4Sj5pHXCqno017aaYFp3e+Ylg1Wd32jKE8Zy8wtAo2A== Received: from [192.168.0.30] (unknown [94.45.192.132]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: wulf) by smtp.freebsd.org (Postfix) with ESMTPSA id 4bG5rx0zxCz16Wf for ; Mon, 09 Jun 2025 09:16:32 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Content-Type: multipart/mixed; boundary="------------o7DegHS0FylXrwq8lvGxA2Jq" Message-ID: <914a8f32-3e82-4ec6-bba7-1ae1d812f9ac@FreeBSD.org> Date: Mon, 9 Jun 2025 12:15:21 +0300 List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Adding kqueue to /dev/dsp To: freebsd-current@freebsd.org References: <5a32b28b-97eb-43c1-82e0-e38e22a63822@tilda.center> Content-Language: en-US From: Vladimir Kondratyev In-Reply-To: <5a32b28b-97eb-43c1-82e0-e38e22a63822@tilda.center> This is a multi-part message in MIME format. --------------o7DegHS0FylXrwq8lvGxA2Jq Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/4/25 20:01, Goran Mekić wrote: > Hello, > > I already talked to christos@ and he's OK with me adding the support for kqueue > to /dev/dsp, but I never saw any docs on how to implement it in the kernel. > Could somebody advise on how to add kqueue support to existing device? I mean, > if you could point out the simple device code with kqueue support, I would be > glad to follow the logic there and learn, for start. Thank you! > > Regards, > meka > > Hi Goran, See attached patch. It enables kqueue support for psm(4) -- WBR Vladimir Kondratyev --------------o7DegHS0FylXrwq8lvGxA2Jq Content-Type: text/x-patch; charset=UTF-8; name="0001-psm-4-Add-kqueue-support.patch" Content-Disposition: attachment; filename="0001-psm-4-Add-kqueue-support.patch" Content-Transfer-Encoding: base64 RnJvbSAyZDRlZmQyNjViZmVhZWE4ZTQ0YzM0ZWU3OTZiNjlkOTlkM2IxMmM1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBWbGFkaW1pciBLb25kcmF0eWV2IDx3dWxmQEZyZWVC U0Qub3JnPgpEYXRlOiBUaHUsIDE1IE1heSAyMDI1IDA3OjUzOjU5ICswMzAwClN1YmplY3Q6 IFtQQVRDSF0gcHNtKDQpOiBBZGQga3F1ZXVlIHN1cHBvcnQKCi0tLQogc3lzL2Rldi9hdGti ZGMvcHNtLmMgfCA0NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKwogMSBmaWxlIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9z eXMvZGV2L2F0a2JkYy9wc20uYyBiL3N5cy9kZXYvYXRrYmRjL3BzbS5jCmluZGV4IGZiZDll YjYxZmVlLi5iNDI5Nzc3YTlkMCAxMDA2NDQKLS0tIGEvc3lzL2Rldi9hdGtiZGMvcHNtLmMK KysrIGIvc3lzL2Rldi9hdGtiZGMvcHNtLmMKQEAgLTYxNCw2ICs2MTQsNyBAQCBzdGF0aWMg ZF9yZWFkX3QJCXBzbXJlYWQ7CiBzdGF0aWMgZF93cml0ZV90CXBzbXdyaXRlOwogc3RhdGlj IGRfaW9jdGxfdAlwc21pb2N0bDsKIHN0YXRpYyBkX3BvbGxfdAkJcHNtcG9sbDsKK3N0YXRp YyBkX2txZmlsdGVyX3QJcHNta3FmaWx0ZXI7CiAKIHN0YXRpYyBpbnQJcHNtb3BlbihzdHJ1 Y3QgcHNtX3NvZnRjICopOwogc3RhdGljIGludAlwc21jbG9zZShzdHJ1Y3QgcHNtX3NvZnRj ICopOwpAQCAtNzY2LDYgKzc2Nyw3IEBAIHN0YXRpYyBzdHJ1Y3QgY2RldnN3IHBzbV9jZGV2 c3cgPSB7CiAJLmRfd3JpdGUgPQlwc213cml0ZSwKIAkuZF9pb2N0bCA9CXBzbWlvY3RsLAog CS5kX3BvbGwgPQlwc21wb2xsLAorCS5kX2txZmlsdGVyID0JcHNta3FmaWx0ZXIsCiAJLmRf bmFtZSA9CVBTTV9EUklWRVJfTkFNRSwKIH07CiAKQEAgLTE5NjIsNiArMTk2NCw3IEBAIHBz bWF0dGFjaChkZXZpY2VfdCBkZXYpCiAJc2MtPnN0YXRlID0gUFNNX1ZBTElEOwogCWNhbGxv dXRfaW5pdCgmc2MtPmNhbGxvdXQsIDApOwogCWNhbGxvdXRfaW5pdCgmc2MtPnNvZnRjYWxs b3V0LCAwKTsKKwlrbmxpc3RfaW5pdF9tdHgoJnNjLT5yc2VsLnNpX25vdGUsICZHaWFudCk7 CiAKIAkvKiBTZXR1cCBvdXIgaW50ZXJydXB0IGhhbmRsZXIgKi8KIAlyaWQgPSBLQkRDX1JJ RF9BVVg7CkBAIC0yMDczLDYgKzIwNzYsOCBAQCBwc21kZXRhY2goZGV2aWNlX3QgZGV2KQog CWRlc3Ryb3lfZGV2KHNjLT5jZGV2KTsKIAlkZXN0cm95X2RldihzYy0+YmRldik7CiAKKwlr bmxpc3RfY2xlYXIoJnNjLT5yc2VsLnNpX25vdGUsIDEpOworCWtubGlzdF9kZXN0cm95KCZz Yy0+cnNlbC5zaV9ub3RlKTsKIAljYWxsb3V0X2RyYWluKCZzYy0+Y2FsbG91dCk7CiAJY2Fs bG91dF9kcmFpbigmc2MtPnNvZnRjYWxsb3V0KTsKIApAQCAtNTIyOSw2ICs1MjM0LDcgQEAg cHNtc29mdGludHIodm9pZCAqYXJnKQogCQl3YWtldXAoc2MpOwogCX0KIAlzZWx3YWtldXBw cmkoJnNjLT5yc2VsLCBQWkVSTyk7CisJS05PVEVfTE9DS0VEKCZzYy0+cnNlbC5zaV9ub3Rl LCAwKTsKIAlpZiAoc2MtPmFzeW5jICE9IE5VTEwpIHsKIAkJcGdzaWdpbygmc2MtPmFzeW5j LCBTSUdJTywgMCk7CiAJfQpAQCAtNTI2Niw2ICs1MjcyLDQ1IEBAIHBzbXBvbGwoc3RydWN0 IGNkZXYgKmRldiwgaW50IGV2ZW50cywgc3RydWN0IHRocmVhZCAqdGQpCiAJcmV0dXJuIChy ZXZlbnRzKTsKIH0KIAorc3RhdGljIHZvaWQKK3BzbWZpbHRlcl9kZXRhY2goc3RydWN0IGtu b3RlICprbikKK3sKKwlzdHJ1Y3QgcHNtX3NvZnRjICpzYyA9IGtuLT5rbl9ob29rOworCisJ a25saXN0X3JlbW92ZSgmc2MtPnJzZWwuc2lfbm90ZSwga24sIDApOworfQorCitzdGF0aWMg aW50Citwc21maWx0ZXIoc3RydWN0IGtub3RlICprbiwgbG9uZyBoaW50KQoreworCXN0cnVj dCBwc21fc29mdGMgKnNjID0ga24tPmtuX2hvb2s7CisKKwlHSUFOVF9SRVFVSVJFRDsKKwor CXJldHVybiAoc2MtPnF1ZXVlLmNvdW50ICE9IDAgPyAxIDogMCk7Cit9CisKK3N0YXRpYyBj b25zdCBzdHJ1Y3QgZmlsdGVyb3BzIHBzbWZpbHRvcHMgPSB7CisJLmZfaXNmZCA9IDEsCisJ LmZfZGV0YWNoID0gcHNtZmlsdGVyX2RldGFjaCwKKwkuZl9ldmVudCA9IHBzbWZpbHRlciwK K307CisKK3N0YXRpYyBpbnQKK3BzbWtxZmlsdGVyKHN0cnVjdCBjZGV2ICpkZXYsIHN0cnVj dCBrbm90ZSAqa24pCit7CisJc3RydWN0IHBzbV9zb2Z0YyAqc2MgPSBkZXYtPnNpX2RydjE7 CisKKwlpZiAoa24tPmtuX2ZpbHRlciAhPSBFVkZJTFRfUkVBRCkKKwkJcmV0dXJuKEVPUE5P VFNVUFApOworCisJa24tPmtuX2ZvcCA9ICZwc21maWx0b3BzOworCWtuLT5rbl9ob29rID0g c2M7CisJa25saXN0X2FkZCgmc2MtPnJzZWwuc2lfbm90ZSwga24sIDEpOworCisJcmV0dXJu ICgwKTsKK30KKwogLyogdmVuZG9yL21vZGVsIHNwZWNpZmljIHJvdXRpbmVzICovCiAKIHN0 YXRpYyBpbnQgbW91c2VfaWRfcHJvYzEoS0JEQyBrYmRjLCBpbnQgcmVzLCBpbnQgc2NhbGUs IGludCAqc3RhdHVzKQotLSAKMi40OS4wCgo= --------------o7DegHS0FylXrwq8lvGxA2Jq--