From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Landau, Bracha" Date: Mon, 11 Jan 2010 19:36:29 +0200 Message-ID: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_065A7D06F7D4E546A18E80E08D066E18146A3016C3ILMA1ILNDSCOM_" MIME-Version: 1.0 Subject: [Xenomai-help] xenomai user app working very slowly List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "xenomai@xenomai.org" --_000_065A7D06F7D4E546A18E80E08D066E18146A3016C3ILMA1ILNDSCOM_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable I converted my regular posix application to a xenomai-posix application, ho= ping to see an improvement in performance. However, the new xenomai applica= tion runs e-x-t-r-e-m-e-l-y slowly, and seems to take undue amounts of CPU = time. I configured the xenomai with -enable-smp and -enable-x86-sep. It is an Ato= m processor (a single cpu). Any ideas why this is happening? ________________________________ This message is confidential and intended only for the addressee. If you ha= ve received this message in error, please immediately notify the postmaster= @nds.com and delete it from your system as well as any copies. The content = of e-mails as well as traffic data may be monitored by NDS for employment a= nd security purposes. To protect the environment please do not print this e-mail unless necessary= . An NDS Group Limited company. www.nds.com --_000_065A7D06F7D4E546A18E80E08D066E18146A3016C3ILMA1ILNDSCOM_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

I converted my regular posix application to a xenoma= i-posix application, hoping to see an improvement in performance. However, = the new xenomai application runs e-x-t-r-e-m-e-l-y slowly, and seems to tak= e undue amounts of CPU time.

 

I configured the xenomai with –enable-smp and = –enable-x86-sep. It is an Atom processor (a single cpu).

 

Any ideas why this is happening?



This message is confidential= and intended only for the addressee. If you have received this message in = error, please immediately notify the postmaster@domain.hid and delete it from = your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for emp= loyment and security purposes.
To protect the environment please do not print this e-mail unless necessary= .

An NDS Group Limited company. www.nds.com
--_000_065A7D06F7D4E546A18E80E08D066E18146A3016C3ILMA1ILNDSCOM_-- From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4B4B6591.6090309@domain.hid> Date: Mon, 11 Jan 2010 18:53:21 +0100 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> In-Reply-To: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: "xenomai@xenomai.org" Landau, Bracha wrote: > I converted my regular posix application to a xenomai-posix > application, hoping to see an improvement in performance. However, > the new xenomai application runs e-x-t-r-e-m-e-l-y slowly, and seems > to take undue amounts of CPU time. > > I configured the xenomai with -enable-smp and -enable-x86-sep. It is > an Atom processor (a single cpu). > > Any ideas why this is happening? Check: http://www.xenomai.org/index.php/Porting_POSIX_applications_to_Xenomai and: http://www.xenomai.org/index.php/FAQs#What_may_cause_a_freeze_or_machine_lockup.3F If you do not find what is wrong, please isolate the issue you have in a small self-contained test case, which we can compile and run to investigate your issue. I insist on "which we can compile", we are not interested in partial pieces of code with ellipsis where we have to figure out what you add to run your test. -- Gilles Chanteperdrix, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Landau, Bracha" Date: Tue, 12 Jan 2010 13:32:34 +0200 Message-ID: <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> In-Reply-To: <4B4B64AF.3040704@domain.hid> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Xenomai-help] xenomai user app working very slowly List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gilles Chanteperdrix Cc: "xenomai@xenomai.org" QWZ0ZXIgcmVhZGluZyBvbmUgb2YgdGhlIGxpbmtzIGJlbG93LCBJIGFkZGVkIGNhbGxzIHRvIHB0 aHJlYWRfc2V0c3RhY2tzaXplIHRvIGxpbWl0IG1lbW9yeSB1c2FnZSwgYW5kIHRoaXMgaW1wcm92 ZWQgdGhlIHRpbWluZy4NCkhvd2V2ZXIsIEkgc3RpbGwgaGF2ZSBzZXZlcmFsIHByb2JsZW1zIHdp dGggdGhlIGFwcGxpY2F0aW9uLg0KSW4gYSB0aHJlYWQgSSBoYXZlIGEgY2FsbCB0byBzZWxlY3Qg d2hpY2ggd2FpdHMgb24gdHdvIG1lc3NhZ2UgcXVldWVzLiBFYWNoIG9mIHRoZXNlIGlzIGEgcmVh bC10aW1lIG1lc3NhZ2UgcXVldWUuIEluIHRoZSByZWd1bGFyIGFwcGxpY2F0aW9uIHRoaXMgd29y a3MgZmluZSwgYnV0IGluIHRoZSB4ZW5vbWFpIGFwcGxpY2F0aW9uIHRoZSBzZWxlY3QgcmV0dXJu cyB3aXRoIGJvdGggc2V0cyByZXR1cm5pbmcgdHJ1ZSB0byAiRkRfSVNTRVQiLCB3aGVuIHRoZXJl IHJlYWxseSBpcyBub3RoaW5nIHRvIHJlYWQgZnJvbSB0aGUgcXVldWUuDQpJIGRpZCBub3QgZmlu ZCBhbnl0aGluZyBpbiB0aGUgbGlua3MgdGhhdCByZWZlcnMgdG8gcHJvYmxlbXMgd2l0aCBzZWxl Y3QgKGFzIGxvbmcgYXMgdGhleSBhcmUgYm90aCByL3QgZGVzY3JpcHRvcnMsIHdoaWNoIHRoZXkg YXJlKS4NCg0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogR2lsbGVzIENoYW50 ZXBlcmRyaXggW21haWx0bzpnaWxsZXMuY2hhbnRlcGVyZHJpeEBnbWFpbC5jb21dDQpTZW50OiBN b25kYXksIEphbnVhcnkgMTEsIDIwMTAgNzo1MCBQTQ0KVG86IExhbmRhdSwgQnJhY2hhDQpDYzog eGVub21haS1oZWxwQGduYS5vcmcNClN1YmplY3Q6IFJlOiBbWGVub21haS1oZWxwXSB4ZW5vbWFp IHVzZXIgYXBwIHdvcmtpbmcgdmVyeSBzbG93bHkNCg0KTGFuZGF1LCBCcmFjaGEgd3JvdGU6DQo+ IEkgY29udmVydGVkIG15IHJlZ3VsYXIgcG9zaXggYXBwbGljYXRpb24gdG8gYSB4ZW5vbWFpLXBv c2l4DQo+IGFwcGxpY2F0aW9uLCBob3BpbmcgdG8gc2VlIGFuIGltcHJvdmVtZW50IGluIHBlcmZv cm1hbmNlLiBIb3dldmVyLA0KPiB0aGUgbmV3IHhlbm9tYWkgYXBwbGljYXRpb24gcnVucyBlLXgt dC1yLWUtbS1lLWwteSBzbG93bHksIGFuZCBzZWVtcw0KPiB0byB0YWtlIHVuZHVlIGFtb3VudHMg b2YgQ1BVIHRpbWUuDQo+DQo+IEkgY29uZmlndXJlZCB0aGUgeGVub21haSB3aXRoIC1lbmFibGUt c21wIGFuZCAtZW5hYmxlLXg4Ni1zZXAuIEl0IGlzDQo+IGFuIEF0b20gcHJvY2Vzc29yIChhIHNp bmdsZSBjcHUpLg0KPg0KPiBBbnkgaWRlYXMgd2h5IHRoaXMgaXMgaGFwcGVuaW5nPw0KDQpDaGVj azoNCmh0dHA6Ly93d3cueGVub21haS5vcmcvaW5kZXgucGhwL1BvcnRpbmdfUE9TSVhfYXBwbGlj YXRpb25zX3RvX1hlbm9tYWkNCmFuZDoNCmh0dHA6Ly93d3cueGVub21haS5vcmcvaW5kZXgucGhw L0ZBUXMjV2hhdF9tYXlfY2F1c2VfYV9mcmVlemVfb3JfbWFjaGluZV9sb2NrdXAuM0YNCg0KSWYg eW91IGRvIG5vdCBmaW5kIHdoYXQgaXMgd3JvbmcsIHBsZWFzZSBpc29sYXRlIHRoZSBpc3N1ZSB5 b3UgaGF2ZSBpbiBhDQpzbWFsbCBzZWxmLWNvbnRhaW5lZCB0ZXN0IGNhc2UsIHdoaWNoIHdlIGNh biBjb21waWxlIGFuZCBydW4gdG8NCmludmVzdGlnYXRlIHlvdXIgaXNzdWUuDQoNCkkgaW5zaXN0 IG9uICJ3aGljaCB3ZSBjYW4gY29tcGlsZSIsIHdlIGFyZSBub3QgaW50ZXJlc3RlZCBpbiBwYXJ0 aWFsDQpwaWVjZXMgb2YgY29kZSB3aXRoIGVsbGlwc2lzIHdoZXJlIHdlIGhhdmUgdG8gZmlndXJl IG91dCB3aGF0IHlvdSBhZGQgdG8NCnJ1biB5b3VyIHRlc3QuDQoNCi0tDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdpbGxlcy4NCg0KVGhpcyBtZXNzYWdlIGlz IGNvbmZpZGVudGlhbCBhbmQgaW50ZW5kZWQgb25seSBmb3IgdGhlIGFkZHJlc3NlZS4gSWYgeW91 IGhhdmUgcmVjZWl2ZWQgdGhpcyBtZXNzYWdlIGluIGVycm9yLCBwbGVhc2UgaW1tZWRpYXRlbHkg bm90aWZ5IHRoZSBwb3N0bWFzdGVyQG5kcy5jb20gYW5kIGRlbGV0ZSBpdCBmcm9tIHlvdXIgc3lz dGVtIGFzIHdlbGwgYXMgYW55IGNvcGllcy4gVGhlIGNvbnRlbnQgb2YgZS1tYWlscyBhcyB3ZWxs IGFzIHRyYWZmaWMgZGF0YSBtYXkgYmUgbW9uaXRvcmVkIGJ5IE5EUyBmb3IgZW1wbG95bWVudCBh bmQgc2VjdXJpdHkgcHVycG9zZXMuDQpUbyBwcm90ZWN0IHRoZSBlbnZpcm9ubWVudCBwbGVhc2Ug ZG8gbm90IHByaW50IHRoaXMgZS1tYWlsIHVubGVzcyBuZWNlc3NhcnkuDQoNCkFuIE5EUyBHcm91 cCBMaW1pdGVkIGNvbXBhbnkuIHd3dy5uZHMuY29tDQo= From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4B4C5EDA.5000703@domain.hid> Date: Tue, 12 Jan 2010 12:36:58 +0100 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> In-Reply-To: <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: Gilles Chanteperdrix , "xenomai@xenomai.org" Landau, Bracha wrote: > After reading one of the links below, I added calls to > pthread_setstacksize to limit memory usage, and this improved the > timing. However, I still have several problems with the application. > In a thread I have a call to select which waits on two message > queues. Each of these is a real-time message queue. In the regular > application this works fine, but in the xenomai application the > select returns with both sets returning true to "FD_ISSET", when > there really is nothing to read from the queue. I did not find > anything in the links that refers to problems with select (as long as > they are both r/t descriptors, which they are). Please verify that you still have the same issue with Xenomai latest stable release (v2.5.0), then send a test case which has this issue. -- Gilles. From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Landau, Bracha" Date: Thu, 14 Jan 2010 15:53:02 +0200 Message-ID: <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> In-Reply-To: <4B4C5EDA.5000703@domain.hid> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gilles Chanteperdrix Cc: Gilles Chanteperdrix , "xenomai@xenomai.org" SSByZWJ1aWx0IHdpdGggMi41LjAgYW5kIHRoYXQgcGFydGljdWxhciBwcm9ibGVtIGlzIGdvbmUu DQpIb3dldmVyLCBJIHNlZSBhIGRpZmZlcmVudCBiZWhhdmlvciBiZXR3ZWVuIHRoZSByZWd1bGFy IGltcGxlbWVudGF0aW9uIGFuZCB0aGUgeGVub21haSBpbXBsZW1lbnRhdGlvbjoNCg0KSSBoYXZl IGEgc2VyaWVzIG9mIGlkZW50aWNhbCB0aHJlYWRzIHdhaXRpbmcsIHVzaW5nIHNlbGVjdCwgb24g b25lIG9mIHR3byBtZXNzYWdlIHF1ZXVlcy4gT25lIG1lc3NhZ2UgcXVldWVzIGlzIHdhaXRlZCB1 cG9uIG9ubHkgYnkgdGhhdCB0aHJlYWQsIGFuZCB0aGUgb3RoZXIgaXMgd2FpdGVkIHVwb24gYnkg YWxsIHRoZSB0aHJlYWRzLiBXaGVuIHRoZSBzZWxlY3QgcmV0dXJucyB0aGUgdGhyZWFkIHJlYWRz IGZyb20gdGhlIHF1ZXVlIHRoYXQgaGFzIGlucHV0IHJlYWR5Lg0KDQpJIHNlbnQgbWVzc2FnZXMg dG8gdGhlIGdlbmVyYWwgcXVldWUgKGkuZS4sIHRoZSBvbmUgd2FpdGVkIHVwb24gYnkgbXVsdGlw bGUgdGhyZWFkcykuDQoNCkluIHRoZSByZWd1bGFyIChub24teGVub21haSkgaW1wbGVtZW50YXRp b24sIEkgc2VlIHRoYXQgdGhlIG1lc3NhZ2VzIHdlcmUgcHJvY2Vzc2VkIG1vcmUtb3ItbGVzcyBl cXVhbGx5IGFtb25nIGFsbCB0aGUgd2FpdGluZyB0aHJlYWRzLg0KDQpJbiB0aGUgeGVub21haSBp bXBsZW1lbnRhdGlvbiwgYWxsIHRoZSBtZXNzYWdlcyB3ZXJlIHByb2Nlc3NlZCBieSBhIHNpbmds ZSB0aHJlYWQuDQoNCklzIHRoZXJlIGFueSB3YXkgdG8gbWFrZSB0aGUgc2NoZWR1bGluZyBkb25l IG1vcmUgImZhaXJseSIgaW4geGVub21haT8NCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N CkZyb206IEdpbGxlcyBDaGFudGVwZXJkcml4IFttYWlsdG86Z2lsbGVzLmNoYW50ZXBlcmRyaXhA eGVub21haS5vcmddDQpTZW50OiBUdWVzZGF5LCBKYW51YXJ5IDEyLCAyMDEwIDE6MzcgUE0NClRv OiBMYW5kYXUsIEJyYWNoYQ0KQ2M6IEdpbGxlcyBDaGFudGVwZXJkcml4OyB4ZW5vbWFpLWhlbHBA Z25hLm9yZw0KU3ViamVjdDogUmU6IFtYZW5vbWFpLWhlbHBdIHhlbm9tYWkgdXNlciBhcHAgd29y a2luZyB2ZXJ5IHNsb3dseQ0KDQpMYW5kYXUsIEJyYWNoYSB3cm90ZToNCj4gQWZ0ZXIgcmVhZGlu ZyBvbmUgb2YgdGhlIGxpbmtzIGJlbG93LCBJIGFkZGVkIGNhbGxzIHRvDQo+IHB0aHJlYWRfc2V0 c3RhY2tzaXplIHRvIGxpbWl0IG1lbW9yeSB1c2FnZSwgYW5kIHRoaXMgaW1wcm92ZWQgdGhlDQo+ IHRpbWluZy4gSG93ZXZlciwgSSBzdGlsbCBoYXZlIHNldmVyYWwgcHJvYmxlbXMgd2l0aCB0aGUg YXBwbGljYXRpb24uDQo+IEluIGEgdGhyZWFkIEkgaGF2ZSBhIGNhbGwgdG8gc2VsZWN0IHdoaWNo IHdhaXRzIG9uIHR3byBtZXNzYWdlDQo+IHF1ZXVlcy4gRWFjaCBvZiB0aGVzZSBpcyBhIHJlYWwt dGltZSBtZXNzYWdlIHF1ZXVlLiBJbiB0aGUgcmVndWxhcg0KPiBhcHBsaWNhdGlvbiB0aGlzIHdv cmtzIGZpbmUsIGJ1dCBpbiB0aGUgeGVub21haSBhcHBsaWNhdGlvbiB0aGUNCj4gc2VsZWN0IHJl dHVybnMgd2l0aCBib3RoIHNldHMgcmV0dXJuaW5nIHRydWUgdG8gIkZEX0lTU0VUIiwgd2hlbg0K PiB0aGVyZSByZWFsbHkgaXMgbm90aGluZyB0byByZWFkIGZyb20gdGhlIHF1ZXVlLiBJIGRpZCBu b3QgZmluZA0KPiBhbnl0aGluZyBpbiB0aGUgbGlua3MgdGhhdCByZWZlcnMgdG8gcHJvYmxlbXMg d2l0aCBzZWxlY3QgKGFzIGxvbmcgYXMNCj4gdGhleSBhcmUgYm90aCByL3QgZGVzY3JpcHRvcnMs IHdoaWNoIHRoZXkgYXJlKS4NCg0KUGxlYXNlIHZlcmlmeSB0aGF0IHlvdSBzdGlsbCBoYXZlIHRo ZSBzYW1lIGlzc3VlIHdpdGggWGVub21haSBsYXRlc3QNCnN0YWJsZSByZWxlYXNlICh2Mi41LjAp LCB0aGVuIHNlbmQgYSB0ZXN0IGNhc2Ugd2hpY2ggaGFzIHRoaXMgaXNzdWUuDQoNCi0tDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdpbGxlcy4NCg0KVGhpcyBt ZXNzYWdlIGlzIGNvbmZpZGVudGlhbCBhbmQgaW50ZW5kZWQgb25seSBmb3IgdGhlIGFkZHJlc3Nl ZS4gSWYgeW91IGhhdmUgcmVjZWl2ZWQgdGhpcyBtZXNzYWdlIGluIGVycm9yLCBwbGVhc2UgaW1t ZWRpYXRlbHkgbm90aWZ5IHRoZSBwb3N0bWFzdGVyQG5kcy5jb20gYW5kIGRlbGV0ZSBpdCBmcm9t IHlvdXIgc3lzdGVtIGFzIHdlbGwgYXMgYW55IGNvcGllcy4gVGhlIGNvbnRlbnQgb2YgZS1tYWls cyBhcyB3ZWxsIGFzIHRyYWZmaWMgZGF0YSBtYXkgYmUgbW9uaXRvcmVkIGJ5IE5EUyBmb3IgZW1w bG95bWVudCBhbmQgc2VjdXJpdHkgcHVycG9zZXMuDQpUbyBwcm90ZWN0IHRoZSBlbnZpcm9ubWVu dCBwbGVhc2UgZG8gbm90IHByaW50IHRoaXMgZS1tYWlsIHVubGVzcyBuZWNlc3NhcnkuDQoNCkFu IE5EUyBHcm91cCBMaW1pdGVkIGNvbXBhbnkuIHd3dy5uZHMuY29tDQo= From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4B4F2F05.1040407@domain.hid> Date: Thu, 14 Jan 2010 15:49:41 +0100 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> In-Reply-To: <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: "xenomai@xenomai.org" Landau, Bracha wrote: > I rebuilt with 2.5.0 and that particular problem is gone. > However, I see a different behavior between the regular implementation and the xenomai implementation: > > I have a series of identical threads waiting, using select, on one of two message queues. One message queues is waited upon only by that thread, and the other is waited upon by all the threads. When the select returns the thread reads from the queue that has input ready. > > I sent messages to the general queue (i.e., the one waited upon by multiple threads). > > In the regular (non-xenomai) implementation, I see that the messages were processed more-or-less equally among all the waiting threads. > > In the xenomai implementation, all the messages were processed by a single thread. > > Is there any way to make the scheduling done more "fairly" in xenomai? The SCHED_FIFO policy is the contrary of fairness. Have you try to use the SCHED_FIFO policy with Linux too? There is not much point using several thread to select on the same file descriptor. The point of select is rather the reverse: being able to wait for several file descriptors with only one thread. If you have If the thread have different priorities, the woken up thread is always the thread with the highest priority. Other than that, I do not really understand what you are talking about, your description of the problem is rather vague. Please post a test case. -- Gilles Chanteperdrix, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Landau, Bracha" Date: Thu, 21 Jan 2010 18:29:10 +0200 Message-ID: <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> <4B4F2F05.1040407@domain.hid> In-Reply-To: <4B4F2F05.1040407@domain.hid> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gilles Chanteperdrix Cc: "xenomai@xenomai.org" WW91IHNheSAiVGhlcmUgaXMgbm90IG11Y2ggcG9pbnQgdXNpbmcgc2V2ZXJhbCB0aHJlYWQgdG8g c2VsZWN0IG9uIHRoZSBzYW1lIGZpbGUgZGVzY3JpcHRvci4gVGhlIHBvaW50IG9mIHNlbGVjdCBp cyByYXRoZXIgdGhlIHJldmVyc2U6IGJlaW5nIGFibGUgdG8gd2FpdCBmb3Igc2V2ZXJhbCBmaWxl IGRlc2NyaXB0b3JzIHdpdGggb25seSBvbmUgdGhyZWFkIg0KSSByZWx5IG9uIHRoaXMgaW4gbXkg ZGVzaWduLiBBcmUgeW91IHNheWluZyB0aGF0IFhlbm9tYWkgZG9lcyBub3Qgc3VwcG9ydCBoYXZp bmcgYSBmZXcgdGhyZWFkcyB3YWl0IG9uIHRoZSBzYW1lIGZpbGUgZGVzY3JpcHRvcj8NCg0KLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IEdpbGxlcyBDaGFudGVwZXJkcml4IFttYWls dG86Z2lsbGVzLmNoYW50ZXBlcmRyaXhAZnJlZS1lbGVjdHJvbnMuY29tXQ0KU2VudDogVGh1cnNk YXksIEphbnVhcnkgMTQsIDIwMTAgNDo1MCBQTQ0KVG86IExhbmRhdSwgQnJhY2hhDQpDYzogeGVu b21haS1oZWxwQGduYS5vcmcNClN1YmplY3Q6IFJlOiBbWGVub21haS1oZWxwXSB4ZW5vbWFpIHVz ZXIgYXBwIHdvcmtpbmcgdmVyeSBzbG93bHkgLSAic2VsZWN0IiBpc3N1ZQ0KDQpMYW5kYXUsIEJy YWNoYSB3cm90ZToNCj4gSSByZWJ1aWx0IHdpdGggMi41LjAgYW5kIHRoYXQgcGFydGljdWxhciBw cm9ibGVtIGlzIGdvbmUuDQo+IEhvd2V2ZXIsIEkgc2VlIGEgZGlmZmVyZW50IGJlaGF2aW9yIGJl dHdlZW4gdGhlIHJlZ3VsYXIgaW1wbGVtZW50YXRpb24gYW5kIHRoZSB4ZW5vbWFpIGltcGxlbWVu dGF0aW9uOg0KPg0KPiBJIGhhdmUgYSBzZXJpZXMgb2YgaWRlbnRpY2FsIHRocmVhZHMgd2FpdGlu ZywgdXNpbmcgc2VsZWN0LCBvbiBvbmUgb2YgdHdvIG1lc3NhZ2UgcXVldWVzLiBPbmUgbWVzc2Fn ZSBxdWV1ZXMgaXMgd2FpdGVkIHVwb24gb25seSBieSB0aGF0IHRocmVhZCwgYW5kIHRoZSBvdGhl ciBpcyB3YWl0ZWQgdXBvbiBieSBhbGwgdGhlIHRocmVhZHMuIFdoZW4gdGhlIHNlbGVjdCByZXR1 cm5zIHRoZSB0aHJlYWQgcmVhZHMgZnJvbSB0aGUgcXVldWUgdGhhdCBoYXMgaW5wdXQgcmVhZHku DQo+DQo+IEkgc2VudCBtZXNzYWdlcyB0byB0aGUgZ2VuZXJhbCBxdWV1ZSAoaS5lLiwgdGhlIG9u ZSB3YWl0ZWQgdXBvbiBieSBtdWx0aXBsZSB0aHJlYWRzKS4NCj4NCj4gSW4gdGhlIHJlZ3VsYXIg KG5vbi14ZW5vbWFpKSBpbXBsZW1lbnRhdGlvbiwgSSBzZWUgdGhhdCB0aGUgbWVzc2FnZXMgd2Vy ZSBwcm9jZXNzZWQgbW9yZS1vci1sZXNzIGVxdWFsbHkgYW1vbmcgYWxsIHRoZSB3YWl0aW5nIHRo cmVhZHMuDQo+DQo+IEluIHRoZSB4ZW5vbWFpIGltcGxlbWVudGF0aW9uLCBhbGwgdGhlIG1lc3Nh Z2VzIHdlcmUgcHJvY2Vzc2VkIGJ5IGEgc2luZ2xlIHRocmVhZC4NCj4NCj4gSXMgdGhlcmUgYW55 IHdheSB0byBtYWtlIHRoZSBzY2hlZHVsaW5nIGRvbmUgbW9yZSAiZmFpcmx5IiBpbiB4ZW5vbWFp Pw0KDQpUaGUgU0NIRURfRklGTyBwb2xpY3kgaXMgdGhlIGNvbnRyYXJ5IG9mIGZhaXJuZXNzLiBI YXZlIHlvdSB0cnkgdG8gdXNlDQp0aGUgU0NIRURfRklGTyBwb2xpY3kgd2l0aCBMaW51eCB0b28/ DQoNClRoZXJlIGlzIG5vdCBtdWNoIHBvaW50IHVzaW5nIHNldmVyYWwgdGhyZWFkIHRvIHNlbGVj dCBvbiB0aGUgc2FtZSBmaWxlDQpkZXNjcmlwdG9yLiBUaGUgcG9pbnQgb2Ygc2VsZWN0IGlzIHJh dGhlciB0aGUgcmV2ZXJzZTogYmVpbmcgYWJsZSB0bw0Kd2FpdCBmb3Igc2V2ZXJhbCBmaWxlIGRl c2NyaXB0b3JzIHdpdGggb25seSBvbmUgdGhyZWFkLiBJZiB5b3UgaGF2ZQ0KDQpJZiB0aGUgdGhy ZWFkIGhhdmUgZGlmZmVyZW50IHByaW9yaXRpZXMsIHRoZSB3b2tlbiB1cCB0aHJlYWQgaXMgYWx3 YXlzDQp0aGUgdGhyZWFkIHdpdGggdGhlIGhpZ2hlc3QgcHJpb3JpdHkuDQoNCk90aGVyIHRoYW4g dGhhdCwgSSBkbyBub3QgcmVhbGx5IHVuZGVyc3RhbmQgd2hhdCB5b3UgYXJlIHRhbGtpbmcgYWJv dXQsDQp5b3VyIGRlc2NyaXB0aW9uIG9mIHRoZSBwcm9ibGVtIGlzIHJhdGhlciB2YWd1ZS4gUGxl YXNlIHBvc3QgYSB0ZXN0IGNhc2UuDQoNCi0tDQpHaWxsZXMgQ2hhbnRlcGVyZHJpeCwgRnJlZSBF bGVjdHJvbnMNCktlcm5lbCwgZHJpdmVycywgcmVhbC10aW1lIGFuZCBlbWJlZGRlZCBMaW51eA0K ZGV2ZWxvcG1lbnQsIGNvbnN1bHRpbmcsIHRyYWluaW5nIGFuZCBzdXBwb3J0Lg0KaHR0cDovL2Zy ZWUtZWxlY3Ryb25zLmNvbQ0KDQpUaGlzIG1lc3NhZ2UgaXMgY29uZmlkZW50aWFsIGFuZCBpbnRl bmRlZCBvbmx5IGZvciB0aGUgYWRkcmVzc2VlLiBJZiB5b3UgaGF2ZSByZWNlaXZlZCB0aGlzIG1l c3NhZ2UgaW4gZXJyb3IsIHBsZWFzZSBpbW1lZGlhdGVseSBub3RpZnkgdGhlIHBvc3RtYXN0ZXJA bmRzLmNvbSBhbmQgZGVsZXRlIGl0IGZyb20geW91ciBzeXN0ZW0gYXMgd2VsbCBhcyBhbnkgY29w aWVzLiBUaGUgY29udGVudCBvZiBlLW1haWxzIGFzIHdlbGwgYXMgdHJhZmZpYyBkYXRhIG1heSBi ZSBtb25pdG9yZWQgYnkgTkRTIGZvciBlbXBsb3ltZW50IGFuZCBzZWN1cml0eSBwdXJwb3Nlcy4N ClRvIHByb3RlY3QgdGhlIGVudmlyb25tZW50IHBsZWFzZSBkbyBub3QgcHJpbnQgdGhpcyBlLW1h aWwgdW5sZXNzIG5lY2Vzc2FyeS4NCg0KQW4gTkRTIEdyb3VwIExpbWl0ZWQgY29tcGFueS4gd3d3 Lm5kcy5jb20NCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4B5881AB.4080102@domain.hid> Date: Thu, 21 Jan 2010 17:32:43 +0100 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> <4B4F2F05.1040407@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> In-Reply-To: <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: "xenomai@xenomai.org" Landau, Bracha wrote: > You say "There is not much point using several thread to select on the same file descriptor. The point of select is rather the reverse: being able to wait for several file descriptors with only one thread" > I rely on this in my design. Are you saying that Xenomai does not support having a few threads wait on the same file descriptor? No, I say this is braindamaged design, because you will get lots of spurious wakeups. But it should work. -- Gilles Chanteperdrix, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4B5883B8.3090406@domain.hid> Date: Thu, 21 Jan 2010 17:41:28 +0100 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> <4B4F2F05.1040407@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> <4B5881AB.4080102@domain.hid> In-Reply-To: <4B5881AB.4080102@domain.hid> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: "xenomai@xenomai.org" Gilles Chanteperdrix wrote: > Landau, Bracha wrote: >> You say "There is not much point using several thread to select on the same file descriptor. The point of select is rather the reverse: being able to wait for several file descriptors with only one thread" >> I rely on this in my design. Are you saying that Xenomai does not support having a few threads wait on the same file descriptor? > > No, I say this is braindamaged design, because you will get lots of > spurious wakeups. But it should work. And to get it working, you have to be sure to put all the file descriptors in non-blocking mode, and be ready for the read/recv operation to fail with errno set to -EWOULDBLOCK, because if two threads wake up because select signaled that the same file descriptor is ready, one thread will win the race, and read will succeed, the other will not. If the file descriptor is not in non-blocking mode, the second read will block its caller. -- Gilles. From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Landau, Bracha" Date: Thu, 21 Jan 2010 18:45:25 +0200 Message-ID: <065A7D06F7D4E546A18E80E08D066E18146A3CE4D0@domain.hid> References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> <4B4F2F05.1040407@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> <4B5881AB.4080102@domain.hid> <4B5883B8.3090406@domain.hid> In-Reply-To: <4B5883B8.3090406@domain.hid> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gilles Chanteperdrix Cc: "xenomai@xenomai.org" RWFjaCB0aHJlYWQgcmVwcmVzZW50cyBhIGRpZmZlcmVudCBwaHlzaWNhbCByZXNvdXJjZS4gVGhl IG1lc3NhZ2UgcXVldWUgZmVlZGluZyBpbnRvIHRoZSB0aHJlYWQgY29udGFpbnMgbWVzc2FnZXMg dGhhdCBtYXkgYmUgc2VydmljZWQgYnkgYW55IG9uZSBvZiB0aGUgcmVzb3VyY2VzLg0KDQoxKSBX aHkgd291bGQgdGhlcmUgYmUgc3B1cmlvdXMgd2FrZXVwcz8NCjIpIEkgZGlkIHRoZSBtcV9vcGVu IGFzIG5vbmJsb2NraW5nLg0KMykgSXQgZGlkICJ3b3JrIiwgYnV0IGFsbCB0aGUgbWVzc2FnZXMg d2VyZSBzZXJ2aWNlZCBieSBhIHNpbmdsZSB0aHJlYWQuIFRoaXMgaXMgYXMgb3Bwb3NlZCB0byB0 aGUgcmVndWxhciAobm9uLXhlbm9tYWkpIGltcGxlbWVudGF0aW9uLCBpbiB3aGljaCB0aGUgbWVz c2FnZXMgYXJlIGRpc3RyaWJ1dGVkIGV2ZW5seSBhbW9uZyB0aGUgdGhyZWFkcy4NCg0KDQoNCi0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBHaWxsZXMgQ2hhbnRlcGVyZHJpeCBbbWFp bHRvOmdpbGxlcy5jaGFudGVwZXJkcml4QHhlbm9tYWkub3JnXQ0KU2VudDogVGh1cnNkYXksIEph bnVhcnkgMjEsIDIwMTAgNjo0MSBQTQ0KVG86IExhbmRhdSwgQnJhY2hhDQpDYzogeGVub21haS1o ZWxwQGduYS5vcmcNClN1YmplY3Q6IFJlOiBbWGVub21haS1oZWxwXSB4ZW5vbWFpIHVzZXIgYXBw IHdvcmtpbmcgdmVyeSBzbG93bHkgLSAic2VsZWN0IiBpc3N1ZQ0KDQpHaWxsZXMgQ2hhbnRlcGVy ZHJpeCB3cm90ZToNCj4gTGFuZGF1LCBCcmFjaGEgd3JvdGU6DQo+PiBZb3Ugc2F5ICJUaGVyZSBp cyBub3QgbXVjaCBwb2ludCB1c2luZyBzZXZlcmFsIHRocmVhZCB0byBzZWxlY3Qgb24gdGhlIHNh bWUgZmlsZSBkZXNjcmlwdG9yLiBUaGUgcG9pbnQgb2Ygc2VsZWN0IGlzIHJhdGhlciB0aGUgcmV2 ZXJzZTogYmVpbmcgYWJsZSB0byB3YWl0IGZvciBzZXZlcmFsIGZpbGUgZGVzY3JpcHRvcnMgd2l0 aCBvbmx5IG9uZSB0aHJlYWQiDQo+PiBJIHJlbHkgb24gdGhpcyBpbiBteSBkZXNpZ24uIEFyZSB5 b3Ugc2F5aW5nIHRoYXQgWGVub21haSBkb2VzIG5vdCBzdXBwb3J0IGhhdmluZyBhIGZldyB0aHJl YWRzIHdhaXQgb24gdGhlIHNhbWUgZmlsZSBkZXNjcmlwdG9yPw0KPg0KPiBObywgSSBzYXkgdGhp cyBpcyBicmFpbmRhbWFnZWQgZGVzaWduLCBiZWNhdXNlIHlvdSB3aWxsIGdldCBsb3RzIG9mDQo+ IHNwdXJpb3VzIHdha2V1cHMuIEJ1dCBpdCBzaG91bGQgd29yay4NCg0KQW5kIHRvIGdldCBpdCB3 b3JraW5nLCB5b3UgaGF2ZSB0byBiZSBzdXJlIHRvIHB1dCBhbGwgdGhlIGZpbGUNCmRlc2NyaXB0 b3JzIGluIG5vbi1ibG9ja2luZyBtb2RlLCBhbmQgYmUgcmVhZHkgZm9yIHRoZSByZWFkL3JlY3YN Cm9wZXJhdGlvbiB0byBmYWlsIHdpdGggZXJybm8gc2V0IHRvIC1FV09VTERCTE9DSywgYmVjYXVz ZSBpZiB0d28gdGhyZWFkcw0Kd2FrZSB1cCBiZWNhdXNlIHNlbGVjdCBzaWduYWxlZCB0aGF0IHRo ZSBzYW1lIGZpbGUgZGVzY3JpcHRvciBpcyByZWFkeSwNCm9uZSB0aHJlYWQgd2lsbCB3aW4gdGhl IHJhY2UsIGFuZCByZWFkIHdpbGwgc3VjY2VlZCwgdGhlIG90aGVyIHdpbGwgbm90Lg0KSWYgdGhl IGZpbGUgZGVzY3JpcHRvciBpcyBub3QgaW4gbm9uLWJsb2NraW5nIG1vZGUsIHRoZSBzZWNvbmQg cmVhZCB3aWxsDQpibG9jayBpdHMgY2FsbGVyLg0KDQotLQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHaWxsZXMuDQoNClRoaXMgbWVzc2FnZSBpcyBjb25maWRl bnRpYWwgYW5kIGludGVuZGVkIG9ubHkgZm9yIHRoZSBhZGRyZXNzZWUuIElmIHlvdSBoYXZlIHJl Y2VpdmVkIHRoaXMgbWVzc2FnZSBpbiBlcnJvciwgcGxlYXNlIGltbWVkaWF0ZWx5IG5vdGlmeSB0 aGUgcG9zdG1hc3RlckBuZHMuY29tIGFuZCBkZWxldGUgaXQgZnJvbSB5b3VyIHN5c3RlbSBhcyB3 ZWxsIGFzIGFueSBjb3BpZXMuIFRoZSBjb250ZW50IG9mIGUtbWFpbHMgYXMgd2VsbCBhcyB0cmFm ZmljIGRhdGEgbWF5IGJlIG1vbml0b3JlZCBieSBORFMgZm9yIGVtcGxveW1lbnQgYW5kIHNlY3Vy aXR5IHB1cnBvc2VzLg0KVG8gcHJvdGVjdCB0aGUgZW52aXJvbm1lbnQgcGxlYXNlIGRvIG5vdCBw cmludCB0aGlzIGUtbWFpbCB1bmxlc3MgbmVjZXNzYXJ5Lg0KDQpBbiBORFMgR3JvdXAgTGltaXRl ZCBjb21wYW55LiB3d3cubmRzLmNvbQ0K From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4B5885B3.9030001@domain.hid> Date: Thu, 21 Jan 2010 17:49:55 +0100 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> <4B4F2F05.1040407@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> <4B5881AB.4080102@domain.hid> <4B5883B8.3090406@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4D0@domain.hid> In-Reply-To: <065A7D06F7D4E546A18E80E08D066E18146A3CE4D0@domain.hid> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: "xenomai@xenomai.org" Landau, Bracha wrote: > Each thread represents a different physical resource. The message > queue feeding into the thread contains messages that may be serviced > by any one of the resources. > > 1) Why would there be spurious wakeups? Read my mail again. I explained it. > 2) I did the mq_open as nonblocking. 3) It did "work", but all the > messages were serviced by a single thread. This is as opposed to the > regular (non-xenomai) implementation, in which the messages are > distributed evenly among the threads. It is the second time you tell me this. And this mail is the third time I ask you to show me some code proving your affirmations. Maybe you are right, maybe you are not and your code is buggy. Therefore, until I receive a valid test case proving your affirmations, I will do nothing about them. -- Gilles. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Philippe Gerum In-Reply-To: <065A7D06F7D4E546A18E80E08D066E18146A3CE4D0@domain.hid> References: <065A7D06F7D4E546A18E80E08D066E18146A3016C3@domain.hid> <4B4B64AF.3040704@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A301A0A@ILMA1.IL.NDS.COM> <4B4C5EDA.5000703@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A341B1B@ILMA1.IL.NDS.COM> <4B4F2F05.1040407@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4CA@ILMA1.IL.NDS.COM> <4B5881AB.4080102@domain.hid> <4B5883B8.3090406@domain.hid> <065A7D06F7D4E546A18E80E08D066E18146A3CE4D0@domain.hid> Content-Type: text/plain; charset="UTF-8" Date: Thu, 21 Jan 2010 18:11:27 +0100 Message-ID: <1264093887.2350.98.camel@domain.hid> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Landau, Bracha" Cc: "xenomai@xenomai.org" On Thu, 2010-01-21 at 18:45 +0200, Landau, Bracha wrote: > Each thread represents a different physical resource. The message queue feeding into the thread contains messages that may be serviced by any one of the resources. > > 1) Why would there be spurious wakeups? > 2) I did the mq_open as nonblocking. > 3) It did "work", but all the messages were serviced by a sing What you might look for, is the round-robin scheduling policy to divide your timeline in multiple slots your different threads could run in. The only upside of this would be to prevent any given thread to keep the CPU busy for too long for processing a single message, at the expense of not always processing the messages in strict FIFO ordering. But if you want to stick to the FIFO policy to implement a thread pool, for polling a single fd with threads that rarely block to handle a message, I don't understand your design more than Gilles does, I'm afraid. > > > -----Original Message----- > From: Gilles Chanteperdrix [mailto:gilles.chanteperdrix@xenomai.org] > Sent: Thursday, January 21, 2010 6:41 PM > To: Landau, Bracha > Cc: xenomai@xenomai.org > Subject: Re: [Xenomai-help] xenomai user app working very slowly - "select" issue > > Gilles Chanteperdrix wrote: > > Landau, Bracha wrote: > >> You say "There is not much point using several thread to select on the same file descriptor. The point of select is rather the reverse: being able to wait for several file descriptors with only one thread" > >> I rely on this in my design. Are you saying that Xenomai does not support having a few threads wait on the same file descriptor? > > > > No, I say this is braindamaged design, because you will get lots of > > spurious wakeups. But it should work. > > And to get it working, you have to be sure to put all the file > descriptors in non-blocking mode, and be ready for the read/recv > operation to fail with errno set to -EWOULDBLOCK, because if two threads > wake up because select signaled that the same file descriptor is ready, > one thread will win the race, and read will succeed, the other will not. > If the file descriptor is not in non-blocking mode, the second read will > block its caller. > > -- > Gilles. > > This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmaster@domain.hid and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. > To protect the environment please do not print this e-mail unless necessary. > > An NDS Group Limited company. www.nds.com > _______________________________________________ > Xenomai-help mailing list > Xenomai-help@domain.hid > https://mail.gna.org/listinfo/xenomai-help -- Philippe.