Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Mar 2014 07:32:08 -0700 (PDT)
From:      Soroosh R <soroosh100@ymail.com>
To:        "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>
Subject:   thread scheduling
Message-ID:  <1395930728.31281.YahooMailNeo@web125404.mail.ne1.yahoo.com>

next in thread | raw e-mail | index | archive | help
---560092261-1364899370-1395930728=:31281
Content-Type: text/plain; charset=us-ascii

hello,
I'm new to freeBSD. I wanted to change the strategy of thread scheduling in freeBSD according to an extra variable added to sched_ule.c but now I don't know which file should be modified to choose thread with highest priority according to new strategy. both "tdq_runq_add" function in sys/kern/sched_ule.c and "runq_choose" function in sys/kern/kern_switch.c are responsible for this job according to their documentation but what is the difference between them and which one should be modified?
---
the attached .c file contains both functions.

---560092261-1364899370-1395930728=:31281
Content-Type: application/octet-stream; name="compare.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="compare.c"

IDM5NyAjZGVmaW5lIFRTX1JRX1BQUSAgICAgICAoKChQUklfTUFYX0JBVENI
IC0gUFJJX01JTl9CQVRDSCkgKyAxKSAvIFJRX05RUykNCiAgMzk4IC8qDQog
IDM5OSAgKiBBZGQgYSB0aHJlYWQgdG8gdGhlIGFjdHVhbCBydW4tcXVldWUu
ICBLZWVwcyB0cmFuc2ZlcmFibGUgY291bnRzIHVwIHRvDQogIDQwMCAgKiBk
YXRlIHdpdGggd2hhdCBpcyBhY3R1YWxseSBvbiB0aGUgcnVuLXF1ZXVlLiAg
U2VsZWN0cyB0aGUgY29ycmVjdA0KICA0MDEgICogcXVldWUgcG9zaXRpb24g
Zm9yIHRpbWVzaGFyZSB0aHJlYWRzLg0KICA0MDIgICovDQogIDQwMyBzdGF0
aWMgX19pbmxpbmUgdm9pZA0KICA0MDQgdGRxX3J1bnFfYWRkKHN0cnVjdCB0
ZHEgKnRkcSwgc3RydWN0IHRkX3NjaGVkICp0cywgaW50IGZsYWdzKQ0KICA0
MDUgew0KICA0MDYgICAgICAgICBURFFfTE9DS19BU1NFUlQodGRxLCBNQV9P
V05FRCk7DQogIDQwNyAgICAgICAgIFRIUkVBRF9MT0NLX0FTU0VSVCh0cy0+
dHNfdGhyZWFkLCBNQV9PV05FRCk7DQogIDQwOCAjaWZkZWYgU01QDQogIDQw
OSAgICAgICAgIGlmIChUSFJFQURfQ0FOX01JR1JBVEUodHMtPnRzX3RocmVh
ZCkpIHsNCiAgNDEwICAgICAgICAgICAgICAgICB0ZHEtPnRkcV90cmFuc2Zl
cmFibGUrKzsNCiAgNDExICAgICAgICAgICAgICAgICB0ZHEtPnRkcV9ncm91
cC0+dGRnX3RyYW5zZmVyYWJsZSsrOw0KICA0MTIgICAgICAgICAgICAgICAg
IHRzLT50c19mbGFncyB8PSBUU0ZfWEZFUkFCTEU7DQogIDQxMyAgICAgICAg
IH0NCiAgNDE0ICNlbmRpZg0KICA0MTUgICAgICAgICBpZiAodHMtPnRzX3J1
bnEgPT0gJnRkcS0+dGRxX3RpbWVzaGFyZSkgew0KICA0MTYgICAgICAgICAg
ICAgICAgIHVfY2hhciBwcmk7DQogIDQxNyANCiAgNDE4ICAgICAgICAgICAg
ICAgICBwcmkgPSB0cy0+dHNfdGhyZWFkLT50ZF9wcmlvcml0eTsNCiAgNDE5
ICAgICAgICAgICAgICAgICBLQVNTRVJUKHByaSA8PSBQUklfTUFYX0JBVENI
ICYmIHByaSA+PSBQUklfTUlOX0JBVENILA0KICA0MjAgICAgICAgICAgICAg
ICAgICAgICAgICAgKCJJbnZhbGlkIHByaW9yaXR5ICVkIG9uIHRpbWVzaGFy
ZSBydW5xIiwgcHJpKSk7DQogIDQyMSAgICAgICAgICAgICAgICAgLyoNCiAg
NDIyICAgICAgICAgICAgICAgICAgKiBUaGlzIHF1ZXVlIGNvbnRhaW5zIG9u
bHkgcHJpb3JpdGllcyBiZXR3ZWVuIE1JTiBhbmQgTUFYDQogIDQyMyAgICAg
ICAgICAgICAgICAgICogcmVhbHRpbWUuICBVc2UgdGhlIHdob2xlIHF1ZXVl
IHRvIHJlcHJlc2VudCB0aGVzZSB2YWx1ZXMuDQogIDQyNCAgICAgICAgICAg
ICAgICAgICovDQogIDQyNSAgICAgICAgICAgICAgICAgaWYgKChmbGFncyAm
IChTUlFfQk9SUk9XSU5HfFNSUV9QUkVFTVBURUQpKSA9PSAwKSB7DQogIDQy
NiAgICAgICAgICAgICAgICAgICAgICAgICBwcmkgPSAocHJpIC0gUFJJX01J
Tl9CQVRDSCkgLyBUU19SUV9QUFE7DQogIDQyNyAgICAgICAgICAgICAgICAg
ICAgICAgICBwcmkgPSAocHJpICsgdGRxLT50ZHFfaWR4KSAlIFJRX05RUzsN
CiAgNDI4ICAgICAgICAgICAgICAgICAgICAgICAgIC8qDQogIDQyOSAgICAg
ICAgICAgICAgICAgICAgICAgICAgKiBUaGlzIGVmZmVjdGl2ZWx5IHNob3J0
ZW5zIHRoZSBxdWV1ZSBieSBvbmUgc28gd2UNCiAgNDMwICAgICAgICAgICAg
ICAgICAgICAgICAgICAqIGNhbiBoYXZlIGEgb25lIHNsb3QgZGlmZmVyZW5j
ZSBiZXR3ZWVuIGlkeCBhbmQNCiAgNDMxICAgICAgICAgICAgICAgICAgICAg
ICAgICAqIHJpZHggd2hpbGUgd2Ugd2FpdCBmb3IgdGhyZWFkcyB0byBkcmFp
bi4NCiAgNDMyICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICA0MzMg
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRkcS0+dGRxX3JpZHggIT0g
dGRxLT50ZHFfaWR4ICYmDQogIDQzNCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcHJpID09IHRkcS0+dGRxX3JpZHgpDQogIDQzNSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHByaSA9ICh1bnNpZ25lZCBjaGFyKShw
cmkgLSAxKSAlIFJRX05RUzsNCiAgNDM2ICAgICAgICAgICAgICAgICB9IGVs
c2UNCiAgNDM3ICAgICAgICAgICAgICAgICAgICAgICAgIHByaSA9IHRkcS0+
dGRxX3JpZHg7DQogIDQzOCAgICAgICAgICAgICAgICAgcnVucV9hZGRfcHJp
KHRzLT50c19ydW5xLCB0cywgcHJpLCBmbGFncyk7DQogIDQzOSAgICAgICAg
IH0gZWxzZQ0KICA0NDAgICAgICAgICAgICAgICAgIHJ1bnFfYWRkKHRzLT50
c19ydW5xLCB0cywgZmxhZ3MpOw0KICA0NDEgfQ0KICANCiAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiAgICA0MzggLyoN
CiAgNDM5ICAqIEZpbmQgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgcHJvY2VzcyBv
biB0aGUgcnVuIHF1ZXVlLg0KICA0NDAgICovDQogIDQ0MSBzdHJ1Y3QgdGhy
ZWFkICoNCiAgNDQyIHJ1bnFfY2hvb3NlKHN0cnVjdCBydW5xICpycSkNCiAg
NDQzIHsNCiAgNDQ0ICAgICAgICAgc3RydWN0IHJxaGVhZCAqcnFoOw0KICA0
NDUgICAgICAgICBzdHJ1Y3QgdGhyZWFkICp0ZDsNCiAgNDQ2ICAgICAgICAg
aW50IHByaTsNCiAgNDQ3IA0KICA0NDggICAgICAgICB3aGlsZSAoKHByaSA9
IHJ1bnFfZmluZGJpdChycSkpICE9IC0xKSB7DQogIDQ0OSAgICAgICAgICAg
ICAgICAgcnFoID0gJnJxLT5ycV9xdWV1ZXNbcHJpXTsNCiAgNDUwICAgICAg
ICAgICAgICAgICB0ZCA9IFRBSUxRX0ZJUlNUKHJxaCk7DQogIDQ1MSAgICAg
ICAgICAgICAgICAgS0FTU0VSVCh0ZCAhPSBOVUxMLCAoInJ1bnFfY2hvb3Nl
OiBubyB0aHJlYWQgb24gYnVzeSBxdWV1ZSIpKTsNCiAgNDUyICAgICAgICAg
ICAgICAgICBDVFIzKEtUUl9SVU5RLA0KICA0NTMgICAgICAgICAgICAgICAg
ICAgICAicnVucV9jaG9vc2U6IHByaT0lZCB0aHJlYWQ9JXAgcnFoPSVwIiwg
cHJpLCB0ZCwgcnFoKTsNCiAgNDU0ICAgICAgICAgICAgICAgICByZXR1cm4g
KHRkKTsNCiAgNDU1ICAgICAgICAgfQ0KICA0NTYgICAgICAgICBDVFIxKEtU
Ul9SVU5RLCAicnVucV9jaG9vc2U6IGlkbGV0aHJlYWQgcHJpPSVkIiwgcHJp
KTsNCiAgNDU3IA0KICA0NTggICAgICAgICByZXR1cm4gKE5VTEwpOw0KICA0
NTkgfQ==

---560092261-1364899370-1395930728=:31281--



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