All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kristian Benoit <kbenoit@domain.hid>
To: Hannes Mayer <h.mayer@domain.hid>
Cc: adeos-main@gna.org, Philippe Gerum <rpm@xenomai.org>
Subject: Re: [Fwd: [Adeos-main] LRTBF par-log.c & adeos_critical_enter question]
Date: Mon, 11 Jul 2005 17:28:58 -0400	[thread overview]
Message-ID: <1121117338.6162.38.camel@domain.hid> (raw)
In-Reply-To: <42D2B3B7.30007@domain.hid>

On Mon, 2005-07-11 at 20:00 +0200, Hannes Mayer wrote:
> Dear Kristian!
> 
> Philippe (Gerum) just notified me, that you're probably not subscribed
> to the Adeos-Main maillist, so I'm forwarding my mail to the list.
> I hope that is OK.

Now I am :) thanks.

> After adeos_critical_enter, interrupts are disabled anyway (right?), so no
> modification of read_pos or write_pos is possible and reading over the
> proc file is not disturbed.
> 
> Furthermore in read_proc you reset disable_timer only after the complete
> buffer was read via the proc file:
> 
> 	if (read_pos == write_pos) {
> 		disable_timer = 0;

Exactly, that's the reason.

> The problem:
> While some user-space app is reading from the proc file, nothing is written
> to the buffer and this causes data loss.

As it actually is only used by lrtbf in the way I wrote it, it does not
really matters. And in that particular case it is better like that as I
insert the module. Do some job on the target. Then when the job is done,
I start reading from the proc file and dont get post job interrupt data
in the buffer.

> IMO, it would be best, if writing to the buffer is not disabled in read_proc.
> In the actual data copying action in read_proc/while-loop no interrupt can
> interfer - and if not everything from the buffer was read in the first place,
> there is no problem if some data is added to the buffer until the next read
> action occurs.

I must admit that it is not really made to be read more than once. I
thought of doiing a double buffering method, but I did'nt much time to
implement an unnecessary feature. (unnecessary in the actual state)   

Kristian



       reply	other threads:[~2005-07-11 21:28 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <42D2B3B7.30007@domain.hid>
2005-07-11 21:28 ` Kristian Benoit [this message]
2005-07-12 21:55   ` [Fwd: [Adeos-main] LRTBF par-log.c & adeos_critical_enter question] Hannes Mayer
2005-07-13  4:04     ` Kristian Benoit
2005-07-13  8:26     ` Philippe Gerum
2005-07-13 13:33     ` Kristian Benoit
2005-07-13 21:35       ` Hannes Mayer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1121117338.6162.38.camel@domain.hid \
    --to=kbenoit@domain.hid \
    --cc=adeos-main@gna.org \
    --cc=h.mayer@domain.hid \
    --cc=rpm@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.