Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Apr 2009 17:17:20 -0700
From:      Maksim Yevmenkin <maksim.yevmenkin@gmail.com>
To:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   [patch] prevent atkbd(4) from calling callback in polled mode
Message-ID:  <bb4a86c70904151717j1b92f4f6t26244b1ab698bf97@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
--0016e64f4a68c9b04f0467a0fcf0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

hello,

would anyone object to the small attached atkbd(4) patch? the idea is
to basically prevent atkbd(4) interrupt handler from calling keyboard
callback function when polled mode is enabled.

i would really like to hear from people who is using kbdmux(4) on smp
systems and having problems with duplicated/missing characters while
using keyboard at mountroot, geli, etc. prompts. basically, when low
level console input functions (cngetc(), gets(), etc.) are used _and_
interrupts are enabled.

thanks,
max

--0016e64f4a68c9b04f0467a0fcf0
Content-Type: text/plain; charset=US-ASCII; name="atkbd.c.diff.txt"
Content-Disposition: attachment; filename="atkbd.c.diff.txt"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_ftkp63940

SW5kZXg6IGF0a2JkLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gYXRrYmQuYwkocmV2aXNpb24gMTkxMDEyKQor
KysgYXRrYmQuYwkod29ya2luZyBjb3B5KQpAQCAtNDc2LDcgKzQ3Niw3IEBACiBzdGF0aWMgaW50
CiBhdGtiZF9pbnRyKGtleWJvYXJkX3QgKmtiZCwgdm9pZCAqYXJnKQogewotCWF0a2JkX3N0YXRl
X3QgKnN0YXRlOworCWF0a2JkX3N0YXRlX3QgKnN0YXRlID0gKGF0a2JkX3N0YXRlX3QgKilrYmQt
PmtiX2RhdGE7CiAJaW50IGRlbGF5WzJdOwogCWludCBjOwogCkBAIC00ODUsNyArNDg1LDYgQEAK
IAkJICogVGhlIGtleWJvYXJkIHdhcyBub3QgZGV0ZWN0ZWQgYmVmb3JlOwogCQkgKiBpdCBtdXN0
IGhhdmUgYmVlbiByZWNvbm5lY3RlZCEKIAkJICovCi0JCXN0YXRlID0gKGF0a2JkX3N0YXRlX3Qg
KilrYmQtPmtiX2RhdGE7CiAJCWluaXRfa2V5Ym9hcmQoc3RhdGUtPmtiZGMsICZrYmQtPmtiX3R5
cGUsCiAJCQkgICAgICBrYmQtPmtiX2NvbmZpZyk7CiAJCUtCRF9GT1VORF9ERVZJQ0Uoa2JkKTsK
QEAgLTQ5Niw2ICs0OTUsOSBAQAogCQlhdGtiZF9pb2N0bChrYmQsIEtEU0VUUkVQRUFULCAoY2Fk
ZHJfdClkZWxheSk7CiAJfQogCisJaWYgKHN0YXRlLT5rc19wb2xsaW5nKQorCQlyZXR1cm4gMDsK
KwogCWlmIChLQkRfSVNfQUNUSVZFKGtiZCkgJiYgS0JEX0lTX0JVU1koa2JkKSkgewogCQkvKiBs
ZXQgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIHByb2Nlc3MgdGhlIGlucHV0ICovCiAJCSgqa2Jk
LT5rYl9jYWxsYmFjay5rY19mdW5jKShrYmQsIEtCRElPX0tFWUlOUFVULAo=
--0016e64f4a68c9b04f0467a0fcf0--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bb4a86c70904151717j1b92f4f6t26244b1ab698bf97>