Re: AOO plugin for PD on SGI Irix

Christof Ressi via Pd-list <[email protected]>
Newsgroups gmane.comp.multimedia.puredata.general
Message-ID <[email protected]>
On 8/12/2026 3:31 AM, Wolfgang Gaggl via Pd-list wrote:
>>> Since atomic RMW operations might fail
> spuriously on your platform, you would need a bounded retry-loop in the
> process() method, like you had before.
>
> That is a point I am still a bit unsure about. I have done a lot of testing by now and the only failure case or long time delays to get a lock I have actually observed is the try_to_lock reader. But I have not measured how long blocking locks actually take, but they do what's expected of them.

I have been thinking: how could anyone implement synchronization 
primitives without reliable atomic operations? To me, a bug in the 
pthread_rwlock implementation seems more likely. However, I know next to 
nothing about SGI or MIPS, so all I can do is speculate.

>
> All good points re locks.
>>> In [aoo_receive~] the network thread
> might actually take a writer lock, see source_desc::handle_start.
> How do you suggest to test a failure of this during a running stream? Starting/Stopping by itself seems fine.

If you send "stop" before "start", the source_desc::process() method 
returns early and therefore doesn't touch the shared data until the next 
"start" message has been processed.

Send the "start" message (without "stop" messages) or change the format 
many times in quick succession. Without proper synchronization, you 
should eventually trigger a data trace.

>
> Thanks,
> Wolfgang
> ---
> [email protected] - the Pure Data mailinglist
> https://lists.iem.at/hyperkitty/list/[email protected]/message/T7FW35VSQ5N2TJBHG5IVYP7QSH52X2XO/
>
> To unsubscribe send an email to [email protected] mailing list
> UNSUBSCRIBE and account-management -> https://lists.iem.at/
>

---
[email protected] - the Pure Data mailinglist
https://lists.iem.at/hyperkitty/list/[email protected]/message/6X7FDAFLQEOMLIJ7BHJOC4KHV7OCBTEX/

To unsubscribe send an email to [email protected] mailing list
UNSUBSCRIBE and account-management -> https://lists.iem.at/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.