linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Steve French <smfrench@austin.rr.com>
To: Arjan van de Ven <arjan@infradead.org>,
	keyrings@linux-nfs.org, linux-kernel@vger.kernel.org
Subject: Re: [Keyrings] Re: [PATCH 01/04] Add multi-precision-integer maths library
Date: Sun, 29 Jan 2006 14:05:36 -0600	[thread overview]
Message-ID: <43DD2010.7010700@austin.rr.com> (raw)
In-Reply-To: <1138540148.3002.9.camel@laptopd505.fenrus.org>

Arjan van de Ven wrote:

>>You are taking the wrong approach.
>>
>>The _only_ question that matters is:
>>Why is it technically impossible to do the same in userspace?
>>
>>If it's technically possible to do the same in userspace, it must not be 
>>done in the kernel.
>>    
>>
>
>
>that is not a reasonable statement because...
>1) you can do all of tcp/ip in userspace just fine
>2) you can do the NFS server in userspace
>3) ...
>4) ...
>
>there are reasons why things that can be done in userspace sometimes
>still make sense to do in kernel space, performance could be one of
>those reasons, being unreasonably complex in userspace is another.
>
>Identity management to some degree belongs in the kernel, simply because
>identity *enforcing* is in the kernel. Some things related to security
>need to be in the kernel at least partially just to avoid a LOT of hairy
>issues and never ending series of security holes due to the exceptional
>complexity you get.
>
>
>  
>
Yes - nicely stated.  There are a few cases in which code would be 
simpler in kernel, and there are even more cases where performance or 
security considerations argue for a mostly kernel implementation of a 
key piece of function.  Although I don't know if the case has been 
reproven for web servers (userspace) or nfs server (kernel) recently,  
this case may be easier to work through if we understood the likely use 
scenarios better of this piece of code. I don't know the right answer 
for the particular math library question, but I have not seen the 
typical argument considered about whether a user space implementation of 
this paticular function could deadlock - ie would this code (proposed to 
move to userspace) ever be called in a path in which the:
    1) kernel were out of memory and userspace is needed to resolve the 
write out of dirty memory
    2) hang due to code going up to userspace in path in which key 
kernel semaphores must be held across the call.

  reply	other threads:[~2006-01-29 20:06 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-26 21:58 [PATCH 00/04] Add DSA key type David Härdeman
2006-01-26 21:58 ` [PATCH 03/04] Add encryption ops to the keyctl syscall David Härdeman
2006-01-26 21:58 ` [PATCH 02/04] Add dsa crypto ops David Härdeman
2006-01-26 21:58 ` [PATCH 01/04] Add multi-precision-integer maths library David Härdeman
2006-01-27  9:28   ` Christoph Hellwig
2006-01-27 20:07   ` David Howells
2006-01-27 20:41     ` David Härdeman
2006-01-27 22:19       ` [Keyrings] " Trond Myklebust
2006-01-27 23:35         ` Kyle Moffett
2006-01-28  0:27           ` Adrian Bunk
2006-01-28  3:45           ` Trond Myklebust
2006-01-28  7:17             ` Kyle Moffett
2006-01-28 10:39               ` Adrian Bunk
2006-01-28  0:22       ` Adrian Bunk
2006-01-28 10:46         ` David Härdeman
2006-01-28 13:03           ` Adrian Bunk
2006-01-28 17:09             ` David Härdeman
2006-01-28 16:37           ` [Keyrings] " Trond Myklebust
2006-01-28 16:57             ` David Härdeman
2006-01-29  3:20               ` Trond Myklebust
2006-01-29 11:33                 ` David Härdeman
2006-01-29 12:29                   ` Adrian Bunk
2006-01-29 13:09                     ` Arjan van de Ven
2006-01-29 20:05                       ` Steve French [this message]
2006-01-29 20:52                         ` Arjan van de Ven
2006-01-29 21:41                           ` Steve French
2006-02-06 12:31                         ` David Howells
2006-01-29 23:18                       ` Adrian Bunk
2006-01-29 13:18                     ` David Härdeman
2006-01-29 23:36                       ` Adrian Bunk
2006-01-30 18:09                         ` Nix
2006-01-29 16:38                   ` Trond Myklebust
2006-01-29 18:49                     ` Dax Kelson
2006-01-29 19:10                       ` Trond Myklebust
2006-01-29 21:29                         ` David Härdeman
2006-01-29 21:46                           ` Trond Myklebust
2006-01-29 21:13                     ` David Härdeman
2006-01-29 21:28                       ` Trond Myklebust
2006-01-29 22:02                         ` David Härdeman
2006-01-29 22:05                           ` Trond Myklebust
2006-01-29 22:54                             ` Kyle Moffett
2006-01-29 23:07                               ` Trond Myklebust
2006-01-29 23:15                               ` Adrian Bunk
2006-01-29 21:09           ` Pavel Machek
2006-01-26 21:58 ` [PATCH 04/04] Add dsa key type David Härdeman
2006-01-27  1:10 ` [PATCH 00/04] Add DSA " Herbert Xu
2006-01-27  7:18   ` David Härdeman
2006-01-27 20:11   ` David Howells
2006-01-27 23:22     ` Herbert Xu

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=43DD2010.7010700@austin.rr.com \
    --to=smfrench@austin.rr.com \
    --cc=arjan@infradead.org \
    --cc=keyrings@linux-nfs.org \
    --cc=linux-kernel@vger.kernel.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 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).