public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "werner" <w.landgraf@ru.ru>
To: Christoph Lameter <cl@linux.com>, Tejun Heo <tj@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Pekka Enberg <penberg@kernel.org>, Ingo Molnar <mingo@elte.hu>,
	Jens Axboe <axboe@kernel.dk>,
	Andrew Morton <akpm@linux-foundation.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [block IO crash] Re: 2.6.39-rc5-git2 boot crashs
Date: Thu, 05 May 2011 17:12:10 -0400	[thread overview]
Message-ID: <web-518814410@zbackend1.aha.ru> (raw)
In-Reply-To: <alpine.DEB.2.00.1105051504250.8529@router.home>

On Thu, 5 May 2011 15:09:04 -0500 (CDT)
  Christoph Lameter <cl@linux.com> wrote:
> On Thu, 5 May 2011, werner wrote:
> 
>>    As the 1st step, for can be compiled generic kernels 
>>at all, the kernel
>> should have (and has) the ability, to discover at 
>>run-time , what hardware the
>> individual user has, and to use only the corresponding 
>>kernel subroutines.
>> F.ex. if subroutines for ELAN or MOORESTON were compiled 
>>also, then the kernel
>> ignore them simply, if on run-time it discovers that the 
>>user has a 486
>> computer.
> 
> Yes indeed the kernel can detect that. And the code has 
>fallback for
> the case that the processor flags indicate that 
>cmpxchg16b is not supported.
> 
> However, in this case the kernel configuration at build 
>time was set in
> such a way (!CMPXCHG64 support but CMPXCHG_LOCAL) that 
>generic fallback
> functions were used at compile time instead of the x86 
>assembly that can
> do the fallback with run time detection. Thus the code 
>to do the fallback
> was not compiled in. Frankly, I was not aware that such 
>a case existed
> where one could disable cmpxchg64 in this way and was 
>expecting that the
> runtime detection would always be compiled in for the 
>CMPXCHG_LOCAL case.
> 
> 
Thus, things gone wrong because it's only half-consequent. 
One should compile everything, and at runtime the kernel 
itself detect the existing hardware and decides/uses just 
what it need.





My (and many other users) mind on configuration is very 
simple: I switch everything on, so that the kernel has 
everything available, and in run-time it uses just what's 
existing on the individual computer of the user.

Just if there occured an human configuration error, so 
that something at run-time wasnt available, then one 
should improve the above explained manner of use, reducing 
human need/influence, compiling everything, and improving 
the kernel's runtime detection and use/selection of its 
adequade modules.

I saw plenty people (specially, beginners) loosing all 
their files by overformating or repartitioning the 
harddisk within a too-complicated installer.  Many 
interactive installers are not good understandable.  And 
many simple users don't know nothing about harddisks, 
partitions, etc. You know all details inside your 
washmachine, and you need to know it for use it ?? Linux 
has to work also for stupid people.  Thus, the 
partitioning / formatting process of the installation is a 
good example what CAN and HAS TO BE full-automatized, in 
order to reduce human errors.  If a typical distro is 5 GB 
or 20 GB big, then the installer can and has to manage it, 
silently and alone, to find or desocupy this space (and 
more if possible) anywhere on a harddisk, silently and by 
itself, so that it installs problemless for beginners 
(while 'specialists' before the installation can desocupy 
a certain space of the harddisk which then the installer 
will find and use).

90% of the config options, users don't know for what they 
are.  Instead of more and more new config features in, 
 EVERY CONFIG PARAMETER WHAT THE KERNEL CAN DETECT AT RUN 
TIME (at the beginning of booting) SHOULD BE THROWED OUT. 
And the kernel should be compiled 'everythingyes' as 
default.   Even then, with all exotic (but nowadays 
happening) boot-necessary input/output hardware included, 
 my vmlinuz is only 10 MB big.   Sufficient memory for run 
this (together with an initrd for an installer) nowadays 
should exist on almost all computers.  All other, not-boot 
necessary modules are perhaps 50 MB, and since the Atari 
time with 20 MB harddisks passed, there is NO REASON FOR 
COMPILE SMALL THE KERNEL. Even on Android phones, 
compiling the kernel / modules 50 MB big but using often 
only a part, dont hurt. But for emergency, instead of 
completely configless, one could let 2 options for the 
kernel config:  normal, small (below 16 M memory). 
   Provisorically, one could but one should not include 
such a raw-selection menu in the kernel config, because to 
check and maintain the dependences of their various single 
config parameters would be big extra work.   Instead of 
this, one should rigorously make more and more config 
parameters definitively obsolete and reduce them by 
improving the corresponding runtime ability of the kernel.
---
Professional hosting for everyone - http://www.host.ru

  reply	other threads:[~2011-05-05 21:12 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-02 22:28 2.6.39-rc5-git2 boot crashs werner
2011-05-02 23:24 ` Linus Torvalds
     [not found]   ` <web-516990066@zbackend1.aha.ru>
2011-05-03 15:22     ` Linus Torvalds
2011-05-03 19:08       ` Ingo Molnar
2011-05-03 20:17         ` Linus Torvalds
2011-05-03 20:20           ` H. Peter Anvin
2011-05-03 20:50             ` Ingo Molnar
2011-05-03 21:45               ` Linus Torvalds
2011-05-03 22:01                 ` H. Peter Anvin
2011-05-04  7:19                 ` Borislav Petkov
2011-05-04  7:38                   ` Ingo Molnar
2011-05-04  7:55                     ` Borislav Petkov
2011-05-04  8:35           ` [block IO crash] " Ingo Molnar
2011-05-04  9:52             ` Thomas Gleixner
2011-05-04 10:19               ` Ingo Molnar
2011-05-04 10:25                 ` Ingo Molnar
2011-05-04 10:33                   ` Ingo Molnar
2011-05-04 12:37                     ` Ingo Molnar
2011-05-04 12:36                   ` Ingo Molnar
2011-05-04 11:11                 ` Thomas Gleixner
2011-05-04 11:16                   ` Pekka Enberg
2011-05-04 11:27                     ` Tejun Heo
2011-05-04 12:51                       ` Pekka Enberg
2011-05-04 12:57                         ` Ingo Molnar
2011-05-04 13:02                           ` Thomas Gleixner
2011-05-04 13:00                       ` Thomas Gleixner
2011-05-04 13:20                         ` Tejun Heo
2011-05-04 14:10                           ` Thomas Gleixner
2011-05-04 14:14                             ` Ingo Molnar
2011-05-04 14:36                               ` [PATCH] slub: Fix the lockless code on 32-bit platforms with no 64-bit cmpxchg Ingo Molnar
2011-05-04 14:42                                 ` Christoph Lameter
2011-05-04 16:30                                 ` Ingo Molnar
2011-05-04 21:52                                 ` Ben Greear
2011-05-04 22:00                                   ` Linus Torvalds
2011-05-04 22:22                                     ` Ben Greear
2011-05-04 14:19                             ` [block IO crash] Re: 2.6.39-rc5-git2 boot crashs Christoph Lameter
2011-05-04 14:25                             ` Tejun Heo
2011-05-04 14:35                               ` Christoph Lameter
2011-05-04 15:20                                 ` Ingo Molnar
2011-05-04 14:46                               ` Thomas Gleixner
2011-05-04 15:00                                 ` Christoph Lameter
2011-05-04 15:13                                   ` Linus Torvalds
2011-05-04 15:28                                     ` Christoph Lameter
2011-05-04 15:37                                       ` Pekka Enberg
2011-05-04 15:53                                         ` Linus Torvalds
2011-05-04 18:20                                           ` Linus Torvalds
2011-05-04 18:49                                             ` Christoph Lameter
2011-05-04 19:07                                               ` Linus Torvalds
2011-05-04 19:30                                                 ` Christoph Lameter
2011-05-04 19:38                                                   ` Linus Torvalds
2011-05-04 20:04                                                     ` Christoph Lameter
2011-05-04 20:21                                                       ` Valdis.Kletnieks
2011-05-04 20:32                                                         ` Christoph Lameter
2011-05-04 20:49                                                           ` Ingo Molnar
2011-05-04 21:06                                                       ` Linus Torvalds
2011-05-04 21:19                                                         ` Linus Torvalds
2011-05-04 21:40                                                           ` Thomas Gleixner
2011-05-05  9:54                                                             ` Tejun Heo
2011-05-05 10:18                                                               ` Ingo Molnar
2011-05-05 10:45                                                               ` Thomas Gleixner
2011-05-05 18:20                                                               ` Christoph Lameter
2011-05-05 19:13                                                                 ` Ingo Molnar
2011-05-05 19:53                                                               ` werner
2011-05-05 20:09                                                                 ` Christoph Lameter
2011-05-05 21:12                                                                   ` werner [this message]
2011-05-05 22:27                                                                     ` Thomas Gleixner
     [not found]                                             ` <web-518008166@zbackend1.aha.ru>
     [not found]                                               ` <web-518059420@zbackend1.aha.ru>
     [not found]                                                 ` <20110505060204.GA28015@elte.hu>
2011-05-05  6:46                                                   ` werner
2011-05-04 15:37                                       ` [block IO crash] " Linus Torvalds
2011-05-04 16:08                                         ` Christoph Lameter
2011-05-04 16:50                                     ` Ingo Molnar
2011-05-04 17:12                                       ` Thomas Gleixner
2011-05-04 15:41                                   ` Pekka Enberg
2011-05-04 13:22                         ` Ingo Molnar
2011-05-04 14:21                         ` Christoph Lameter
2011-05-04 14:04                     ` Christoph Lameter
2011-05-04 14:07                       ` Tejun Heo
2011-05-04 14:21                       ` Thomas Gleixner
2011-05-04 10:13             ` Ingo Molnar
2011-05-04 10:41               ` Ingo Molnar
2011-05-04 10:45                 ` Ingo Molnar
2011-05-04 11:06                   ` Ingo Molnar
2011-05-04 12:37                     ` Ingo Molnar
2011-05-04 12:47                       ` Ingo Molnar

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=web-518814410@zbackend1.aha.ru \
    --to=w.landgraf@ru.ru \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=cl@linux.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=penberg@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.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