From: Nicholas Mc Guire <der.herr@hofr.at>
To: Jan Kiszka <jan.kiszka@web.de>
Cc: Armin Steinhoff <armin@steinhoff.de>,
Monica Puig-Pey <puigpeym@unican.es>,
linux-rt-users@vger.kernel.org
Subject: Re: I/O operations priority in RTOS
Date: Mon, 6 Jun 2011 00:29:55 +0200 [thread overview]
Message-ID: <20110605222954.GA13340@opentech.at> (raw)
In-Reply-To: <4DEB5015.7070601@web.de>
On Sun, 05 Jun 2011, Jan Kiszka wrote:
> On 2011-06-05 11:28, Nicholas Mc Guire wrote:
> > On Sun, 05 Jun 2011, Armin Steinhoff wrote:
> >
> >> Nicholas Mc Guire wrote:
> >>> On Sat, 04 Jun 2011, Monica Puig-Pey wrote:
> >>>
> >>>> Hello,
> >>>> I'm studying how to develop drivers in a real time OS and how do they
> >>>> work. I'm using Ubuntu 10.04 with the 2.6.31-11-rt patch installed.
> >>>> I would like to know the priority when executing open(), read(), write()
> >>>> and close() operations.
> >>>> In my example the thread which is using the driver runs with 10 RTPRIO,
> >>>> but I don't know what happens in kernel context with the priority when
> >>>> running the I/O operations.
> >>>> Thank you for your help, I don't know where to learn about this.
> >>>>
> >>> []
> >>> Also when using bottom half mechanisms you need to take into account the
> >>> priority of the kernel thread that manages the defered work items, so
> >>> rt-drivers may have a different structure than normal drivers.
> >>
> >> That's the reason why I prefer UIO based user space drivers !
> >>
> > ...and how to resolve DMA ? if DMA were resolved cleanly I would agree.
>
> Regarding that limitation, there is some hope: "next-generation" UIO is
> called VFIO. Useful for exclusively assigning virtual PCI functions of
> network adapters etc. to user space stacks or hypervisors like QEMU/KVM
> (for device pass-through). But it's not mainline yet. And it obviously
> requires an IOMMU.
>
> But the key point remains: "exclusively". Anything else cannot be
> modeled efficiently via UIO or VFIO.
>
for many RT apps that is an acceptable limit - in fact sometimes a requirement - having dynamic access and handling this at runtime is not necessarily an advantage for rt. Giving guarantees on timing for non-exclusive access in the general case would probably need to be based on a priority access model any way (i.e. running non-RT network traffic on a RT-link as "rt-idle" bandwidth usage - but full shared access at runtime would be very hard, if not impossible, to model at the device interface level without breaking RT properties. So I think its legitimate to keep it out of the device all together and let the user apps have a non-rt fight about access...
Any pointers to VFIO ?
hofrat
next prev parent reply other threads:[~2011-06-05 22:29 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-04 11:48 One Interrupted Threads per Interrupt line? Monica Puig-Pey
2011-06-04 12:03 ` I/O operations priority in RTOS Monica Puig-Pey
2011-06-04 12:30 ` kernel threads in drivers using the RT patch Monica Puig-Pey
2011-06-06 11:47 ` Changing Kernel thread priorities Monica Puig-Pey
2011-06-06 11:54 ` Rolando Martins
2011-06-06 11:58 ` Monica Puig-Pey
2011-06-06 16:49 ` Mark Hounschell
2011-06-07 8:40 ` Monica Puig-Pey
2011-06-07 9:14 ` Mark Hounschell
2011-06-07 9:46 ` Mark Hounschell
2011-06-07 18:34 ` Monica Puig-Pey
2011-06-07 18:55 ` Mark Hounschell
2011-06-10 10:12 ` Monica Puig-Pey
2011-06-06 18:20 ` Armin Steinhoff
2011-06-04 23:42 ` I/O operations priority in RTOS Nicholas Mc Guire
2011-06-05 8:46 ` Armin Steinhoff
2011-06-05 9:25 ` Jan Kiszka
2011-06-05 22:39 ` Armin Steinhoff
2011-06-05 23:09 ` Jan Kiszka
2011-06-05 9:28 ` Nicholas Mc Guire
2011-06-05 9:44 ` Jan Kiszka
2011-06-05 22:29 ` Nicholas Mc Guire [this message]
2011-06-05 23:00 ` Jan Kiszka
2011-06-06 0:21 ` Nicholas Mc Guire
2011-06-06 20:35 ` Jan Kiszka
2011-06-06 7:41 ` Armin Steinhoff
2011-06-06 20:48 ` Jan Kiszka
2011-06-05 22:32 ` Armin Steinhoff
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=20110605222954.GA13340@opentech.at \
--to=der.herr@hofr.at \
--cc=armin@steinhoff.de \
--cc=jan.kiszka@web.de \
--cc=linux-rt-users@vger.kernel.org \
--cc=puigpeym@unican.es \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).