linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Peter Williams <pwil3058@bigpond.net.au>
To: "Bill Huey (hui)" <bhuey@lnxw.com>
Cc: "Jack O'Quin" <joq@io.com>, Ingo Molnar <mingo@elte.hu>,
	Nick Piggin <nickpiggin@yahoo.com.au>,
	Paul Davis <paul@linuxaudiosystems.com>,
	Con Kolivas <kernel@kolivas.org>,
	linux <linux-kernel@vger.kernel.org>,
	rlrevell@joe-job.com, CK Kernel <ck@vds.kolivas.org>,
	utz <utz@s2y4n2c.de>, Andrew Morton <akpm@osdl.org>,
	alexn@dsv.su.se, Rui Nuno Capela <rncbc@rncbc.org>,
	Chris Wright <chrisw@osdl.org>,
	Arjan van de Ven <arjanv@redhat.com>
Subject: Re: [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU_RATIO feature
Date: Thu, 03 Feb 2005 08:54:24 +1100	[thread overview]
Message-ID: <42014C10.60407@bigpond.net.au> (raw)
In-Reply-To: <20050202111045.GA12155@nietzsche.lynx.com>

Bill Huey (hui) wrote:
> On Tue, Feb 01, 2005 at 11:10:48PM -0600, Jack O'Quin wrote:
> 
>>Ingo Molnar <mingo@elte.hu> writes:
>>
>>>(also, believe me, this is not arrogance or some kind of game on our
>>>part. If there was a nice clean solution that solved your and others'
>>>problems equally well then it would already be in Linus' tree. But there
>>>is no such solution yet, at the moment. Moreover, the pure fact that so
>>>many patch proposals exist and none looks dominantly convincing shows
>>>that this is a problem area for which there are no easy solutions. We
>>>hate such moments just as much as you do, but they do happen.)
>>
>>The actual requirement is nowhere near as difficult as you imagine.
>>You and several others continue to view realtime in a multi-user
>>context.  That doesn't work.  No wonder you have no good solution.
> 
> 
> A notion of process/thread scoping is needed from my point of view. How
> to implement that is another matter and there are no clear solutions
> that don't involve major changes in some way to fundamental syscalls
> like fork/clone() and underlying kernel structures from what I see.
> The very notion of Unix fork semantics isn't sufficient enough to
> "contain" these semantics. It's more about controlling things with
> known quantities over time, not about process creation relationships,
> and therein lies the mismatch.
> 
> Also, as media apps get more sophisticated they're going to need some
> kind of access to the some traditional softirq facilities, possibily
> migrating it into userspace safely somehow, with how it handles IO
> processing such as iSCSI, FireWire, networking and all peripherals
> that need some kind of prioritized IO handling. It's akin to O_DIRECT,
> where folks need to determine policy over the kernel's own facilities,
> IO queues, but in a more broad way. This is inevitable for these
> category of apps. Scary ? yes I know.
> 
> Think XFS streaming with guaranteed rate IO, then generalize this for
> all things that can be streamed in the kernel. A side note, they'll
> also be pegging CPU usage and attempting to draw to the screen at the
> same time. It would be nice to have slack from scheduler frames be use
> for less critical things such as drawing to the screen.
> 
> The policy for scheduling these IO requests maybe divorced from the
> actual priority of the thread requesting it which present some problems
> with the current Linux code as I understand it.
> 
> Whether this suitable for main stream inclusion is another matter. But
> as a person that wants to write apps of this nature, I came into this
> kernel stuff knowing that there's going to be a conflict between the
> the needs of media apps folks and what the Linux kernel folks will
> tolerate as a community.
> 
> 
>>The humble RT-LSM was actually optimal for the multi-user scenario:
>>don't load it.  Then it adds no security issues, complexity or
>>scheduler pathlength.  As an added benefit, the sysadmin can easily
>>verify that it's not there.
>>
>>The cost/performance characteristics of commodity PC's running Linux
>>are quite compelling for a wide range of practical realtime
>>applications.  But, these are dedicated machines.  The whole system
>>must be carefully tuned.  That is the only method that actually works.
>>The scheduler is at most a peripheral concern; the best it can do is
>>not screw up.
> 
> 
> It's very compelling and very deadly to the industry if these things
> become common place in the normal Linux kernel. It would instantly
> make Linux the top platform for anything media related, graphic and
> audio. (Hopefully, I can get back to kernel coding RT stuff after this
> current distraction that has me reassigned onto an emergency project)
> 
> I hope I clarified some of this communication and not completely scare
> Ingo and others too much. Just a little bit is ok. :)

As Ingo said in an earlier a post, with a little ingenuity this problem 
can be solved in user space.  The programs in question can be setuid 
root so that they can set RT scheduling policy BUT have their 
permissions set so that they only executable by owner and group with the 
group set to a group that only contains those users that have permission 
to run this program in RT mode.  If you wish to allow other users to run 
the program but not in RT mode then you would need two copies of the 
program: one set up as above and the other with normal permissions.

It may be necessary for users that are members of this RT group to do a 
newgrp before running this program if it isn't their primary group.  But 
that could be done in a shell wrapper.

If you have the source code for the programs then they could be modified 
to drop the root euid after they've changed policy.  Or even do the 
group membership check inside the program and if the user that launches 
the program is not a member of the group drop root euid immediately on 
start up.

Peter
-- 
Peter Williams                                   pwil3058@bigpond.net.au

"Learning, n. The kind of ignorance distinguishing the studious."
  -- Ambrose Bierce

  parent reply	other threads:[~2005-02-02 21:59 UTC|newest]

Thread overview: 198+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-19 22:39 [PATCH]sched: Isochronous class v2 for unprivileged soft rt scheduling Con Kolivas
2005-01-20  0:16 ` utz lehmann
2005-01-20  0:33   ` Con Kolivas
2005-01-20  4:26     ` utz lehmann
2005-01-20  5:55       ` Con Kolivas
2005-01-20 17:54   ` Alexander Nyberg
2005-01-20 20:27     ` Con Kolivas
2005-01-20  0:53 ` Con Kolivas
2005-01-20  1:32   ` Jack O'Quin
2005-01-20  2:06     ` Con Kolivas
2005-01-20  2:45       ` Jack O'Quin
2005-01-20  4:07         ` Con Kolivas
2005-01-20  4:57           ` Jack O'Quin
2005-01-20  5:05             ` Gene Heskett
2005-01-20  5:59             ` Con Kolivas
2005-01-20  6:35               ` Con Kolivas
2005-01-20 15:19                 ` Jack O'Quin
2005-01-20 15:42                   ` Paul Davis
2005-01-20 16:47                     ` Jack O'Quin
2005-01-20 17:25                       ` Ingo Molnar
2005-01-22  0:09                         ` Jack O'Quin
2005-01-22 16:54                           ` Ingo Molnar
2005-01-22 21:23                             ` Jack O'Quin
2005-01-23  2:06                               ` Nick Piggin
2005-01-23  2:58                                 ` Chris Wright
2005-01-24  8:59                               ` Ingo Molnar
2005-01-24  9:55                                 ` Paolo Ciarrocchi
2005-01-24 10:29                                   ` Nick Piggin
2005-01-24 10:46                                   ` Ingo Molnar
2005-01-24 12:58                                 ` [patch, 2.6.11-rc2] sched: /proc/sys/kernel/rt_cpu_limit tunable Ingo Molnar
2005-01-24 13:34                                   ` Ingo Molnar
2005-01-24 13:53                                   ` Con Kolivas
2005-01-24 14:01                                     ` [ck] " Con Kolivas
     [not found]                                   ` <87k6q2umla.fsf@sulphur.joq.us>
2005-01-25  6:28                                     ` Nick Piggin
2005-01-25 14:12                                       ` Ingo Molnar
2005-01-25  8:37                                     ` Ingo Molnar
2005-01-25 21:36                                       ` Jack O'Quin
2005-01-25 21:49                                         ` Ingo Molnar
2005-01-25 21:55                                           ` Chris Wright
2005-01-25 21:57                                             ` Ingo Molnar
2005-01-25 22:03                                               ` Chris Wright
2005-01-25 22:08                                                 ` Ingo Molnar
2005-01-25 22:16                                                   ` Chris Wright
2005-01-25 22:44                                                 ` Bill Rugolsky Jr.
2005-01-26  5:12                                           ` Jack O'Quin
2005-01-26  7:27                                             ` Ingo Molnar
2005-01-26 11:02                                               ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU feature, -D7 Ingo Molnar
2005-01-25 13:56                                   ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU_RATIO feature Ingo Molnar
2005-01-25 14:06                                     ` Con Kolivas
2005-01-25 22:18                                     ` Peter Williams
2005-01-25 22:26                                       ` Peter Williams
2005-01-26 10:08                                         ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU feature, -D7 Ingo Molnar
2005-01-26 14:22                                           ` Jack O'Quin
2005-01-26 16:18                                           ` [ck] " Cal
2005-01-26 16:29                                             ` Cal
2005-01-26 16:41                                             ` Jack O'Quin
2005-01-26 17:57                                               ` Cal
2005-01-26 18:57                                                 ` Jack O'Quin
2005-01-27  2:03                                                   ` Cal
2005-01-27  8:51                                                     ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU feature, -D8 Ingo Molnar
2005-01-27 12:48                                                       ` Cal
2005-01-27 16:31                                                       ` Mike Galbraith
2005-01-26 21:28                                           ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU feature, -D7 Peter Williams
2005-01-26 21:44                                           ` Peter Williams
2005-01-26  9:20                                       ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU_RATIO feature Ingo Molnar
2005-01-31 23:03                                         ` Peter Williams
2005-02-01 10:11                                           ` [patch] sys_setpriority() euid semantics fix Ingo Molnar
2005-02-01 21:46                                             ` Peter Williams
2005-01-26  5:24                                     ` [patch, 2.6.11-rc2] sched: RLIMIT_RT_CPU_RATIO feature Jack O'Quin
2005-01-26  7:04                                       ` Ingo Molnar
2005-01-26 22:27                                         ` Jack O'Quin
2005-01-26 23:29                                           ` Nick Piggin
2005-01-27  2:31                                             ` Jack O'Quin
2005-01-27  3:26                                               ` Nick Piggin
2005-01-27  5:15                                                 ` Jack O'Quin
2005-01-27  5:54                                                   ` Nick Piggin
2005-01-27  8:35                                                     ` Ingo Molnar
2005-01-27  8:59                                                       ` Ingo Molnar
2005-01-27 11:35                                                   ` Ingo Molnar
2005-02-02  5:10                                                     ` Jack O'Quin
2005-02-02 11:10                                                       ` Bill Huey
2005-02-02 16:44                                                         ` Jack O'Quin
2005-02-02 21:14                                                           ` Bill Huey
2005-02-02 21:20                                                             ` Bill Huey
2005-02-02 21:21                                                             ` Ingo Molnar
2005-02-02 21:34                                                               ` Bill Huey
2005-02-02 22:59                                                                 ` Paul Davis
2005-02-03  2:46                                                                   ` Bill Huey
2005-02-03 14:20                                                                     ` Paul Davis
2005-02-03 20:19                                                                       ` Con Kolivas
2005-02-03 20:47                                                                         ` Ingo Molnar
2005-02-03 21:15                                                                           ` Paul Davis
2005-02-03 21:28                                                                             ` Ingo Molnar
2005-02-03 21:41                                                                               ` Paul Davis
2005-02-03 21:59                                                                                 ` Ingo Molnar
2005-02-03 22:24                                                                                   ` Paul Davis
2005-02-03 22:26                                                                                     ` Ingo Molnar
2005-02-04  0:36                                                                           ` Tristan Wibberley
2005-02-03 21:48                                                                       ` Peter Williams
2005-02-04 16:41                                                                         ` Jack O'Quin
2005-02-04 21:38                                                                           ` Peter Williams
2005-02-03 21:41                                                                 ` Ingo Molnar
2005-02-03 23:01                                                                   ` Bill Huey
2005-02-11 21:27                                                                   ` Lee Revell
2005-02-02 21:54                                                         ` Peter Williams [this message]
2005-02-02 23:03                                                           ` Paul Davis
2005-02-02 23:46                                                             ` Peter Williams
2005-02-03  1:13                                                               ` Jack O'Quin
2005-02-03  3:10                                                                 ` Peter Williams
2005-02-03  3:56                                                                   ` Jack O'Quin
2005-02-03 21:36                                                             ` Ingo Molnar
2005-02-04  0:35                                                               ` Chris Wright
2005-02-04 17:21                                                               ` Jack O'Quin
2005-02-03  2:54                                                           ` Bill Huey
2005-02-03  3:25                                                             ` Peter Williams
2005-02-02 11:37                                                       ` Ingo Molnar
2005-02-02 16:01                                                         ` Jack O'Quin
2005-02-02 18:59                                                       ` Lee Revell
2005-02-02 19:31                                                         ` Jack O'Quin
2005-02-02 20:29                                                           ` Ingo Molnar
2005-02-02 22:45                                                             ` Jack O'Quin
2005-02-02 20:17                                                       ` Ingo Molnar
2005-01-27 20:01                                                   ` Lee Revell
2005-01-28  6:38                                                 ` Ingo Molnar
2005-01-28  8:09                                                   ` Jack O'Quin
2005-01-28  8:08                                             ` Ingo Molnar
2005-01-28  8:35                                               ` Jack O'Quin
2005-01-28  8:40                                                 ` Ingo Molnar
2005-01-28  9:01                                                   ` Jack O'Quin
2005-01-28  9:11                                                     ` Ingo Molnar
2005-01-29  0:44                                                       ` Lee Revell
2005-01-28  9:51                                                     ` Mike Galbraith
2005-01-28 22:16                                                   ` Peter Williams
2005-01-28 22:19                                                     ` Ingo Molnar
2005-01-29  7:02                                                     ` Jack O'Quin
2005-01-31 22:29                                                   ` Bill Davidsen
2005-02-01  0:39                                                     ` Bill Huey
2005-01-25  5:16                                 ` [PATCH]sched: Isochronous class v2 for unprivileged soft rt scheduling Jack O'Quin
2005-01-25 15:09                                   ` Ingo Molnar
2005-01-23 20:48                             ` Jack O'Quin
2005-01-23 22:57                               ` Con Kolivas
2005-01-24  1:06                                 ` Jack O'Quin
2005-01-24  1:09                                   ` Con Kolivas
2005-01-24  4:45                                     ` Jack O'Quin
2005-01-24  4:53                                       ` Jack O'Quin
2005-01-24  6:28                                         ` Jack O'Quin
2005-01-24  6:35                                           ` Con Kolivas
2005-01-24  6:57                                             ` Jack O'Quin
2005-01-24 22:58                                               ` Con Kolivas
2005-01-25  3:55                                                 ` Con Kolivas
2005-01-25 13:05                                                   ` Con Kolivas
2005-01-25 14:38                                                     ` Con Kolivas
2005-01-25 18:36                                                     ` Jack O'Quin
2005-01-25 20:52                                                       ` Rui Nuno Capela
2005-01-24 21:46                                           ` Con Kolivas
2005-01-23  7:38                           ` Jack O'Quin
2005-01-23  7:41                             ` Con Kolivas
2005-01-24  6:30                         ` Jack O'Quin
2005-01-24 20:55                           ` Ingo Molnar
2005-01-20 21:59                       ` Peter Chubb
2005-01-21  0:30                         ` Jack O'Quin
2005-01-22 14:06                         ` Paul Davis
2005-01-20 17:49                     ` ross
2005-01-20 19:07                       ` Lee Revell
2005-01-20 23:17                       ` Con Kolivas
2005-01-21  7:48                         ` Ingo Molnar
2005-02-07  3:09               ` Werner Almesberger
2005-02-07  3:27                 ` Jack O'Quin
2005-02-07  3:27                   ` Con Kolivas
2005-01-20  9:06             ` Rui Nuno Capela
2005-01-20 17:09               ` Rui Nuno Capela
2005-01-20 19:32                 ` Jack O'Quin
2005-01-21  9:18                   ` Rui Nuno Capela
2005-01-21 16:23                     ` Con Kolivas
2005-01-21 16:40                       ` Jack O'Quin
2005-01-22  0:06                 ` Con Kolivas
2005-01-22  6:18                   ` Jack O'Quin
2005-01-22  6:19                     ` Con Kolivas
2005-01-22  6:48                     ` Con Kolivas
2005-01-22  6:50                       ` Con Kolivas
2005-01-22  7:09                         ` Con Kolivas
2005-01-22 20:22                           ` Jack O'Quin
2005-01-23  1:02                             ` Con Kolivas
2005-01-23  3:02                               ` Jack O'Quin
2005-01-23  4:29                                 ` Con Kolivas
2005-01-23  4:46                                   ` Jack O'Quin
2005-01-23  4:50                                     ` Con Kolivas
2005-01-23  7:37                                       ` Mike Galbraith
2005-01-23 13:57                                         ` Paul Davis
2005-01-23  1:31                             ` Con Kolivas
2005-01-23  1:41                               ` Paul Davis
2005-01-23  1:56                                 ` Con Kolivas
2005-01-23  4:50                                   ` Jack O'Quin
2005-01-21 23:30 ` utz lehmann
2005-01-21 23:48   ` Con Kolivas
2005-01-22  0:28     ` utz lehmann
2005-01-22  3:52       ` Con Kolivas
2005-01-22  6:15         ` Jack O'Quin

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=42014C10.60407@bigpond.net.au \
    --to=pwil3058@bigpond.net.au \
    --cc=akpm@osdl.org \
    --cc=alexn@dsv.su.se \
    --cc=arjanv@redhat.com \
    --cc=bhuey@lnxw.com \
    --cc=chrisw@osdl.org \
    --cc=ck@vds.kolivas.org \
    --cc=joq@io.com \
    --cc=kernel@kolivas.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=nickpiggin@yahoo.com.au \
    --cc=paul@linuxaudiosystems.com \
    --cc=rlrevell@joe-job.com \
    --cc=rncbc@rncbc.org \
    --cc=utz@s2y4n2c.de \
    /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).