All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 4/5] Bluetooth: Schedule links by tx buffer use
@ 2011-08-17 20:03 Peter Hurley
  0 siblings, 0 replies; only message in thread
From: Peter Hurley @ 2011-08-17 20:03 UTC (permalink / raw)
  To: linux-bluetooth

Q29tYmluZSB0eCBsaW5rIHR5cGVzIHdoaWNoIHVzZSB0aGUgc2FtZSB0eCBidWZmZXJzLiBTbyBT
Q08gYW5kIEVTQ08NCmxpbmtzIGFyZSBzY2hlZHVsZWQgdG9nZXRoZXIgYW5kIGFsc28gc2NoZWR1
bGUgTEUgbGlua3Mgd2l0aCBBQ0wNCmxpbmtzICppZiogdGhlIGNvbnRyb2xsZXIgdXNlcyBzaGFy
ZWQgQUNMIGJ1ZmZlcnMgZm9yIExFIHR4Lg0KDQpUaGlzIGFsc28gZml4ZXMgdHggdGltZW91dHMg
aWYgdGhlIGNvbnRyb2xsZXIgdXNlcyBzaGFyZWQgQUNMIGJ1ZmZlcnMNCmZvciBMRSB0eC4NCg0K
U2lnbmVkLW9mZi1ieTogUGV0ZXIgSHVybGV5IDxwZXRlckBodXJsZXlzb2Z0d2FyZS5jb20+DQot
LS0NCiBpbmNsdWRlL25ldC9ibHVldG9vdGgvaGNpLmggfCAgIDEwICsrKysrKw0KIG5ldC9ibHVl
dG9vdGgvaGNpX2NvcmUuYyAgICB8ICAgNzIgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tDQogMiBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCA0MyBkZWxl
dGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvbmV0L2JsdWV0b290aC9oY2kuaCBiL2lu
Y2x1ZGUvbmV0L2JsdWV0b290aC9oY2kuaA0KaW5kZXggMGMyMDIyNy4uYzgzMTllNSAxMDA2NDQN
Ci0tLSBhL2luY2x1ZGUvbmV0L2JsdWV0b290aC9oY2kuaA0KKysrIGIvaW5jbHVkZS9uZXQvYmx1
ZXRvb3RoL2hjaS5oDQpAQCAtMTc0LDYgKzE3NCwxNiBAQCBlbnVtIHsNCiAvKiBMb3cgRW5lcmd5
IGxpbmtzIGRvIG5vdCBoYXZlIGRlZmluZWQgbGluayB0eXBlLiBVc2UgaW52ZW50ZWQgb25lICov
DQogI2RlZmluZSBMRV9MSU5LCQkweDgwDQogDQorI2RlZmluZSBMRV9NQVNLCQkweDgwDQorI2Rl
ZmluZSBTQ09fTUFTSwkweDAxDQorI2RlZmluZSBBQ0xfTUFTSwkweDAyDQorI2RlZmluZSBFU0NP
X01BU0sJMHgwNA0KKw0KK3N0YXRpYyBpbmxpbmUgX191OCBsaW5rX21hc2soX191OCB0eXBlKQ0K
K3sNCisJcmV0dXJuIHR5cGUgPCBMRV9MSU5LID8gMSA8PCB0eXBlIDogTEVfTUFTSzsNCit9DQor
DQogLyogTE1QIGZlYXR1cmVzICovDQogI2RlZmluZSBMTVBfM1NMT1QJMHgwMQ0KICNkZWZpbmUg
TE1QXzVTTE9UCTB4MDINCmRpZmYgLS1naXQgYS9uZXQvYmx1ZXRvb3RoL2hjaV9jb3JlLmMgYi9u
ZXQvYmx1ZXRvb3RoL2hjaV9jb3JlLmMNCmluZGV4IDY2ODA4OGYuLmE4MmFhNTIgMTAwNjQ0DQot
LS0gYS9uZXQvYmx1ZXRvb3RoL2hjaV9jb3JlLmMNCisrKyBiL25ldC9ibHVldG9vdGgvaGNpX2Nv
cmUuYw0KQEAgLTE3OTgsNyArMTc5OCw4IEBAIEVYUE9SVF9TWU1CT0woaGNpX3NlbmRfc2NvKTsN
CiAvKiAtLS0tIEhDSSBUWCB0YXNrIChvdXRnb2luZyBkYXRhKSAtLS0tICovDQogDQogLyogSENJ
IENvbm5lY3Rpb24gc2NoZWR1bGVyICovDQotc3RhdGljIGlubGluZSBzdHJ1Y3QgaGNpX2Nvbm4g
KmhjaV9sb3dfc2VudChzdHJ1Y3QgaGNpX2RldiAqaGRldiwgX191OCB0eXBlLCBpbnQgKnF1b3Rl
KQ0KK3N0YXRpYyBpbmxpbmUgc3RydWN0IGhjaV9jb25uICpoY2lfbG93X3NlbnQoc3RydWN0IGhj
aV9kZXYgKmhkZXYsDQorCQkJCQkJX191OCBzZWxlY3QsIGludCAqcXVvdGUpDQogew0KIAlzdHJ1
Y3QgaGNpX2Nvbm5faGFzaCAqaCA9ICZoZGV2LT5jb25uX2hhc2g7DQogCXN0cnVjdCBoY2lfY29u
biAqY29ubiA9IE5VTEw7DQpAQCAtMTgxMSw3ICsxODEyLDEwIEBAIHN0YXRpYyBpbmxpbmUgc3Ry
dWN0IGhjaV9jb25uICpoY2lfbG93X3NlbnQoc3RydWN0IGhjaV9kZXYgKmhkZXYsIF9fdTggdHlw
ZSwgaW50DQogCQlzdHJ1Y3QgaGNpX2Nvbm4gKmM7DQogCQljID0gbGlzdF9lbnRyeShwLCBzdHJ1
Y3QgaGNpX2Nvbm4sIGxpc3QpOw0KIA0KLQkJaWYgKGMtPnR5cGUgIT0gdHlwZSB8fCBza2JfcXVl
dWVfZW1wdHkoJmMtPmRhdGFfcSkpDQorCQlpZiAobGlua19tYXNrKGMtPnR5cGUpICYgfnNlbGVj
dCkNCisJCQljb250aW51ZTsNCisNCisJCWlmIChza2JfcXVldWVfZW1wdHkoJmMtPmRhdGFfcSkp
DQogCQkJY29udGludWU7DQogDQogCQlpZiAoYy0+c3RhdGUgIT0gQlRfQ09OTkVDVEVEICYmIGMt
PnN0YXRlICE9IEJUX0NPTkZJRykNCkBAIC0xODMyLDcgKzE4MzYsNyBAQCBzdGF0aWMgaW5saW5l
IHN0cnVjdCBoY2lfY29ubiAqaGNpX2xvd19zZW50KHN0cnVjdCBoY2lfZGV2ICpoZGV2LCBfX3U4
IHR5cGUsIGludA0KIAlyZXR1cm4gY29ubjsNCiB9DQogDQotc3RhdGljIGlubGluZSB2b2lkIGhj
aV9saW5rX3R4X3RvKHN0cnVjdCBoY2lfZGV2ICpoZGV2LCBfX3U4IHR5cGUpDQorc3RhdGljIGlu
bGluZSB2b2lkIGhjaV9saW5rX3R4X3RvKHN0cnVjdCBoY2lfZGV2ICpoZGV2LCBfX3U4IHNlbGVj
dCkNCiB7DQogCXN0cnVjdCBoY2lfY29ubl9oYXNoICpoID0gJmhkZXYtPmNvbm5faGFzaDsNCiAJ
c3RydWN0IGxpc3RfaGVhZCAqcDsNCkBAIC0xODQzLDcgKzE4NDcsNyBAQCBzdGF0aWMgaW5saW5l
IHZvaWQgaGNpX2xpbmtfdHhfdG8oc3RydWN0IGhjaV9kZXYgKmhkZXYsIF9fdTggdHlwZSkNCiAJ
LyogS2lsbCBzdGFsbGVkIGNvbm5lY3Rpb25zICovDQogCWxpc3RfZm9yX2VhY2gocCwgJmgtPmxp
c3QpIHsNCiAJCWMgPSBsaXN0X2VudHJ5KHAsIHN0cnVjdCBoY2lfY29ubiwgbGlzdCk7DQotCQlp
ZiAoYy0+dHlwZSA9PSB0eXBlICYmIGMtPnNlbnQpIHsNCisJCWlmIChsaW5rX21hc2soYy0+dHlw
ZSkgJiBzZWxlY3QgJiYgYy0+c2VudCkgew0KIAkJCUJUX0VSUigiJXMga2lsbGluZyBzdGFsbGVk
IGNvbm5lY3Rpb24gJXMiLA0KIAkJCQloZGV2LT5uYW1lLCBiYXRvc3RyKCZjLT5kc3QpKTsNCiAJ
CQloY2lfYWNsX2Rpc2Nvbm4oYywgMHgxMyk7DQpAQCAtMTg1NiwyMSArMTg2MCwyNyBAQCBzdGF0
aWMgaW5saW5lIHZvaWQgaGNpX3NjaGVkX2FjbChzdHJ1Y3QgaGNpX2RldiAqaGRldikNCiAJc3Ry
dWN0IGhjaV9jb25uICpjb25uOw0KIAlzdHJ1Y3Qgc2tfYnVmZiAqc2tiOw0KIAlpbnQgcXVvdGUg
PSBoZGV2LT5hY2xfY250Ow0KKwlfX3U4IHNlbGVjdCA9IEFDTF9NQVNLOw0KKw0KKwkvKiBBbHNv
IHNlbGVjdCBMRSBsaW5rcyBpZiBBQ0wgYnVmZmVycyBhcmUgc2hhcmVkICovDQorCWlmICghaGRl
di0+bGVfcGt0cykNCisJCXNlbGVjdCB8PSBMRV9NQVNLOw0KIA0KIAlCVF9EQkcoIiVzIiwgaGRl
di0+bmFtZSk7DQogDQogCWlmICghdGVzdF9iaXQoSENJX1JBVywgJmhkZXYtPmZsYWdzKSkgew0K
IAkJLyogQUNMIHR4IHRpbWVvdXQgbXVzdCBiZSBsb25nZXIgdGhhbiBtYXhpbXVtDQogCQkgKiBs
aW5rIHN1cGVydmlzaW9uIHRpbWVvdXQgKDQwLjkgc2Vjb25kcykgKi8NCi0JCWlmICghaGRldi0+
YWNsX2NudCAmJiB0aW1lX2FmdGVyKGppZmZpZXMsIGhkZXYtPmFjbF9sYXN0X3R4ICsgSFogKiA0
NSkpDQotCQkJaGNpX2xpbmtfdHhfdG8oaGRldiwgQUNMX0xJTkspOw0KKwkJaWYgKCFxdW90ZSAm
JiB0aW1lX2FmdGVyKGppZmZpZXMsIGhkZXYtPmFjbF9sYXN0X3R4ICsgSFogKiA0NSkpDQorCQkJ
aGNpX2xpbmtfdHhfdG8oaGRldiwgc2VsZWN0KTsNCiAJfQ0KIA0KLQl3aGlsZSAocXVvdGUgJiYg
KGNvbm4gPSBoY2lfbG93X3NlbnQoaGRldiwgQUNMX0xJTkssICZxdW90ZSkpKSB7DQorCXdoaWxl
IChxdW90ZSAmJiAoY29ubiA9IGhjaV9sb3dfc2VudChoZGV2LCBzZWxlY3QsICZxdW90ZSkpKSB7
DQogCQl3aGlsZSAocXVvdGUgJiYgKHNrYiA9IHNrYl9kZXF1ZXVlKCZjb25uLT5kYXRhX3EpKSkg
ew0KIAkJCUJUX0RCRygic2tiICVwIGxlbiAlZCIsIHNrYiwgc2tiLT5sZW4pOw0KIA0KLQkJCWhj
aV9jb25uX2VudGVyX2FjdGl2ZV9tb2RlKGNvbm4pOw0KKwkJCWlmIChjb25uLT50eXBlID09IEFD
TF9MSU5LKQ0KKwkJCQloY2lfY29ubl9lbnRlcl9hY3RpdmVfbW9kZShjb25uKTsNCiANCiAJCQlo
Y2lfc2VuZF9mcmFtZShza2IpOw0KIAkJCWhkZXYtPmFjbF9sYXN0X3R4ID0gamlmZmllczsNCkBA
IC0xODg4LDMxICsxODk4LDExIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBoY2lfc2NoZWRfc2NvKHN0
cnVjdCBoY2lfZGV2ICpoZGV2KQ0KIAlzdHJ1Y3QgaGNpX2Nvbm4gKmNvbm47DQogCXN0cnVjdCBz
a19idWZmICpza2I7DQogCWludCBxdW90ZSA9IGhkZXYtPnNjb19jbnQ7DQorCV9fdTggc2VsZWN0
ID0gU0NPX01BU0sgfCBFU0NPX01BU0s7DQogDQogCUJUX0RCRygiJXMiLCBoZGV2LT5uYW1lKTsN
CiANCi0Jd2hpbGUgKHF1b3RlICYmIChjb25uID0gaGNpX2xvd19zZW50KGhkZXYsIFNDT19MSU5L
LCAmcXVvdGUpKSkgew0KLQkJd2hpbGUgKHF1b3RlICYmIChza2IgPSBza2JfZGVxdWV1ZSgmY29u
bi0+ZGF0YV9xKSkpIHsNCi0JCQlCVF9EQkcoInNrYiAlcCBsZW4gJWQiLCBza2IsIHNrYi0+bGVu
KTsNCi0JCQloY2lfc2VuZF9mcmFtZShza2IpOw0KLQ0KLQkJCXF1b3RlLS07DQotCQkJY29ubi0+
c2VudCsrOw0KLQkJCWlmIChjb25uLT5zZW50ID09IH4wKQ0KLQkJCQljb25uLT5zZW50ID0gMDsN
Ci0JCX0NCi0JfQ0KLX0NCi0NCi1zdGF0aWMgaW5saW5lIHZvaWQgaGNpX3NjaGVkX2VzY28oc3Ry
dWN0IGhjaV9kZXYgKmhkZXYpDQotew0KLQlzdHJ1Y3QgaGNpX2Nvbm4gKmNvbm47DQotCXN0cnVj
dCBza19idWZmICpza2I7DQotCWludCBxdW90ZSA9IGhkZXYtPnNjb19jbnQ7DQotDQotCUJUX0RC
RygiJXMiLCBoZGV2LT5uYW1lKTsNCi0NCi0Jd2hpbGUgKHF1b3RlICYmIChjb25uID0gaGNpX2xv
d19zZW50KGhkZXYsIEVTQ09fTElOSywgJnF1b3RlKSkpIHsNCisJd2hpbGUgKHF1b3RlICYmIChj
b25uID0gaGNpX2xvd19zZW50KGhkZXYsIHNlbGVjdCwgJnF1b3RlKSkpIHsNCiAJCXdoaWxlIChx
dW90ZSAmJiAoc2tiID0gc2tiX2RlcXVldWUoJmNvbm4tPmRhdGFfcSkpKSB7DQogCQkJQlRfREJH
KCJza2IgJXAgbGVuICVkIiwgc2tiLCBza2ItPmxlbik7DQogCQkJaGNpX3NlbmRfZnJhbWUoc2ti
KTsNCkBAIC0xOTI5LDE5ICsxOTE5LDE4IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBoY2lfc2NoZWRf
bGUoc3RydWN0IGhjaV9kZXYgKmhkZXYpDQogew0KIAlzdHJ1Y3QgaGNpX2Nvbm4gKmNvbm47DQog
CXN0cnVjdCBza19idWZmICpza2I7DQotCWludCBxdW90ZSA9IGhkZXYtPmxlX3BrdHMgPyBoZGV2
LT5sZV9jbnQgOiBoZGV2LT5hY2xfY250Ow0KKwlpbnQgcXVvdGUgPSBoZGV2LT5sZV9jbnQ7DQog
DQogCUJUX0RCRygiJXMiLCBoZGV2LT5uYW1lKTsNCiANCiAJaWYgKCF0ZXN0X2JpdChIQ0lfUkFX
LCAmaGRldi0+ZmxhZ3MpKSB7DQogCQkvKiBMRSB0eCB0aW1lb3V0IG11c3QgYmUgbG9uZ2VyIHRo
YW4gbWF4aW11bQ0KIAkJICogbGluayBzdXBlcnZpc2lvbiB0aW1lb3V0ICg0MC45IHNlY29uZHMp
ICovDQotCQlpZiAoIWhkZXYtPmxlX2NudCAmJiBoZGV2LT5sZV9wa3RzICYmDQotCQkJCXRpbWVf
YWZ0ZXIoamlmZmllcywgaGRldi0+bGVfbGFzdF90eCArIEhaICogNDUpKQ0KLQkJCWhjaV9saW5r
X3R4X3RvKGhkZXYsIExFX0xJTkspOw0KKwkJaWYgKCFxdW90ZSAmJiB0aW1lX2FmdGVyKGppZmZp
ZXMsIGhkZXYtPmxlX2xhc3RfdHggKyBIWiAqIDQ1KSkNCisJCQloY2lfbGlua190eF90byhoZGV2
LCBMRV9NQVNLKTsNCiAJfQ0KIA0KLQl3aGlsZSAocXVvdGUgJiYgKGNvbm4gPSBoY2lfbG93X3Nl
bnQoaGRldiwgTEVfTElOSywgJnF1b3RlKSkpIHsNCisJd2hpbGUgKHF1b3RlICYmIChjb25uID0g
aGNpX2xvd19zZW50KGhkZXYsIExFX01BU0ssICZxdW90ZSkpKSB7DQogCQl3aGlsZSAocXVvdGUg
JiYgKHNrYiA9IHNrYl9kZXF1ZXVlKCZjb25uLT5kYXRhX3EpKSkgew0KIAkJCUJUX0RCRygic2ti
ICVwIGxlbiAlZCIsIHNrYiwgc2tiLT5sZW4pOw0KIA0KQEAgLTE5NTIsMTAgKzE5NDEsNyBAQCBz
dGF0aWMgaW5saW5lIHZvaWQgaGNpX3NjaGVkX2xlKHN0cnVjdCBoY2lfZGV2ICpoZGV2KQ0KIAkJ
CWNvbm4tPnNlbnQrKzsNCiAJCX0NCiAJfQ0KLQlpZiAoaGRldi0+bGVfcGt0cykNCi0JCWhkZXYt
PmxlX2NudCA9IHF1b3RlOw0KLQllbHNlDQotCQloZGV2LT5hY2xfY250ID0gcXVvdGU7DQorCWhk
ZXYtPmxlX2NudCA9IHF1b3RlOw0KIH0NCiANCiBzdGF0aWMgdm9pZCBoY2lfdHhfdGFzayh1bnNp
Z25lZCBsb25nIGFyZykNCkBAIC0xOTcwLDE0ICsxOTU2LDE0IEBAIHN0YXRpYyB2b2lkIGhjaV90
eF90YXNrKHVuc2lnbmVkIGxvbmcgYXJnKQ0KIA0KIAkvKiBTY2hlZHVsZSBxdWV1ZXMgYW5kIHNl
bmQgc3R1ZmYgdG8gSENJIGRyaXZlciAqLw0KIA0KKwkvKiBBbHNvIHNjaGVkdWxlcyBMRSBsaW5r
cyBpZiBhY2wgYnVmZmVycyBhcmUgc2hhcmVkICovDQogCWhjaV9zY2hlZF9hY2woaGRldik7DQog
DQorCS8qIEFsc28gc2NoZWR1bGVzIGVzY28gbGlua3MgKi8NCiAJaGNpX3NjaGVkX3NjbyhoZGV2
KTsNCiANCi0JaGNpX3NjaGVkX2VzY28oaGRldik7DQotDQotCS8qIE9ubHkgc2NoZWR1bGUgbGUg
bGlua3MgaWYgZGV2aWNlIGlzIGxlLWNhcGFibGUgKi8NCi0JaWYgKGxtcF9sZV9jYXBhYmxlKGhk
ZXYpKQ0KKwkvKiBPbmx5IHNjaGVkdWxlIExFIGxpbmtzIGhlcmUgaWYgYWNsIGJ1ZmZlcnMgYXJl
IG5vdCBzaGFyZWQgKi8NCisJaWYgKGhkZXYtPmxlX3BrdHMpDQogCQloY2lfc2NoZWRfbGUoaGRl
dik7DQogDQogCS8qIFNlbmQgbmV4dCBxdWV1ZWQgcmF3ICh1bmtub3duIHR5cGUpIHBhY2tldCAq
Lw0KLS0gDQoxLjcuNC4xDQoNCg==

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2011-08-17 20:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-17 20:03 [RFC 4/5] Bluetooth: Schedule links by tx buffer use Peter Hurley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.