Understanding mkinitcpio, kernel parameters, and hooks.

I have a fairly complex setup involving dm-crypt volumes being unlocked pre-boot, so I'm somewhat familiar with mkinitcpio.conf and grub.cfg. However, I still have a burning question: are kernel parameters actually interpreted by the kernel? For example, the ip= parameter is included in the kernel documentation, leading me to believe that the kernel interprets this parameter and acts upon it during boot. On the other hand, the cryptdevice= parameter appears to be specific to the mkinitcpio encrypt hook (does not appear in kernel documentation) which interprets it and runs cryptsetup in early userspace. In this case, are kernel parameters simply being used as a vehicle in order to pass information from the boot loader to early userspace? If so, why couldn't this be done by including a configuration file directly in the initcpio, which could be parsed at boot-time? Such a configuration file seems like a superior means of passing information to early userspace, as different files could be used for different hooks, they could be of different formats (i.e. contain linebreaks), and would not be subject to the maximum kernel command line length.
In fact, it looks like some hooks already do this. For example, the sd-encrypt hook includes a file /etc/crypttab file directly in the initcpio image. Why would other hooks use kernel parameters when the early userspace filesystem is available for use?
I'm primarily asking just for educational purposes. Explanations are appreciated.

Spider.007 wrote:I think the ip-parameter is coincidentally the same as the net-module uses.
I found this in the mkinitcpio-nfs-utils ipconfig README:
These [parameters] (along with the ugliness of the long form) are present for compatibility with the in-kernel ipconfig code from 2.4 and earlier kernels.
which supports the hypothesis that the kernel parameter is left over from a time when network configurations were done in kernel-space. The syntax remained the same in the initcpio hook to maintain backwards comparability with older bootloader configurations. At least that's the impression I'm under.
Spider.007 wrote:The kernel is still responsible for mounting the rootfs; what has changed is that most distro's switched to initcpio's for reasons that are repeated on the wiki: ...
Yes, I believe the kernel itself performs the mount(2) which overwrites the / mountpoint with the real root filesystem after it is available. (But for all I know, a hook could be performing a mount(8) instead of the kernel!) What I meant was that the kernel no longer is responsible for all of the initializations necessary for the real root filesystem to become available (so the kernel can mount it), hence the need for initrd/initramfs/initcpio. Take dropbear_initrd_encrypt for example. Dropbear is a userspace SSH server. Without early userspace, an SSH server would have to be embedded in the kernel just for the 0.01% of users out there who need to be able to unlock volumes remotely. Early userspace allows complex systems like this (and other very different ones) to be configured without the need for patching the kernel.
I assume that some low-level kernel parameters (maxcpus= for example) are still relevant solely to the kernel, as things like SMP process scheduling can't easily be implemented in userspace.
Am I getting this right so far?
Last edited by EscapedNull (2015-01-13 19:40:50)

Similar Messages

  • Understanding a kernel log and fixing the problem

    Is anyone able to understand the kernel panic log below and help me fix the problem. I'm on an Intel Core 2 Duo iMac (late 2006) running 10.4.11. Here's the log:
    Mon Sep 22 19:53:13 2008
    panic(cpu 0 caller 0x001A49CB): Unresolved kernel trap (CPU 0, Type 14=page fault), registers:
    CR0: 0x8001003b, CR2: 0x00000002, CR3: 0x00f17000, CR4: 0x000006e0
    EAX: 0x000000ff, EBX: 0x00000001, ECX: 0x00000000, EDX: 0x25b73913
    CR2: 0x00000002, EBP: 0x140e3d58, ESI: 0x125e2000, EDI: 0x02e0a800
    EFL: 0x00010246, EIP: 0x00a0ddac, CS: 0x00000008, DS: 0x00000010
    Backtrace, Format - Frame : Return Address (4 potential args on stack)
    0x140e3a58 : 0x128d0d (0x3cc65c 0x140e3a7c 0x131f95 0x0)
    0x140e3a98 : 0x1a49cb (0x3d2a94 0x0 0xe 0x3d22b8)
    0x140e3ba8 : 0x19b3a4 (0x140e3bc0 0x287 0x140e3bf8 0x140a17)
    0x140e3d58 : 0xa0fc3b (0x25b738c8 0x25b738e0 0x5f 0x2827c00)
    0x140e3e78 : 0xa110cb (0x0 0x23 0x140e3ed8 0x1a2e7e)
    0x140e3ed8 : 0x9ba88b (0x125e2000 0x0 0x0 0x0)
    0x140e3f08 : 0x39b96f (0x2b68400 0x2b45d40 0x1 0x268dfe4)
    0x140e3f58 : 0x39ab41 (0x2b45d40 0x136064 0x0 0x268dfe4)
    0x140e3f88 : 0x39a877 (0x2c7c640 0x2c7c640 0x134db9 0x136064)
    0x140e3fc8 : 0x19b21c (0x2c7c640 0x0 0x19e0b5 0x27e37a0) Backtrace terminated-invalid frame pointer 0x0
    Kernel loadable modules in backtrace (with dependencies):
    com.apple.driver.AirPortBrcm43xx(244.46.9)@0x9b3000
    dependency: com.apple.iokit.IONetworkingFamily(1.5.1)@0x969000
    dependency: com.apple.iokit.IOPCIFamily(2.2)@0x566000
    dependency: com.apple.iokit.IO80211Family(163.1)@0x994000
    Kernel version:
    Darwin Kernel Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386
    Thanks!

    Understanding crash logs isn’t easy and it’s hard (sometimes impossible) to decipher the cause of the problem. Take a look at Apple’s Crash Reporter document at http://developer.apple.com/technotes/tn2004/tn2123.html The log does reference Airport. Are you using AirPort?
    Kernel panics are usually caused by a hardware problem – frequently RAM, a USB device or a Firewire device. When trying to troubleshoot problems, disconnect all external devices except your monitor, kbd & mouse. Do you experience the same problems?
    May be a solution on one of these links.
    Mac OS X Kernel Panic FAQ
    Mac OS X Kernel Panic FAQ
    Resolving Kernel Panics
    Avoiding and eliminating Kernel panics
    12-Step Program to Isolate Freezes and/or Kernel Panics
     Cheers, Tom

  • Y setting kernel parameters in linux and not in windows

    Hi Can any one please help me out...
    While installing oracle on linux we are setting some kernel parameters But when installing in windows are we setting any kernel parameters...We are not setting any parameters...can any one please explain why r we setting kernel parameters and what is the use of those parameters and why are we not setting any parameters in windows.

    probably because linux != windows
    anyway, there are still some recommendation you can follow, for example if you want to use more than 2Gb of memory in win32

  • Size of Kernel parameter and SGA

    Hi,
    Can you please suggest me the ideal size of kernel parameters and SGA?
    Currently, I have installed 2GB RAM on my machine using Oracle 10.1 database version on Fedora Linux platform. The parameters are currently set as below:
    kernel.shmall = 2097152 (2MB)
    kernel.shmmax = 2147483648 (2048 MB)
    kernel.shmmni = 4096
    # semaphores: semmsl, semmns, semopm, semmni
    kernel.sem = 250 32000 100 128
    I will appreciate if you can give me an idea about the proper size of SGA including SHARED_POOL_SIZE,LARGE_POOL_SIZE AND JAVA_POOL_SIZE.
    Thanks in advance.
    Jayesh

    Oracle's install docs indicate practical minimums. The specific section for Linux x86 is at
    http://download-west.oracle.com/docs/cd/B19306_01/install.102/b15660/pre_install.htm#sthref264
    The proper size of the pools is always dependent on the workload. It takes experience, understanding of the application and monitoring to size these properly - the realm of the DBA.
    However, by setting the SGA_TARGET to some value (less than equal to SGA_MAX_SIZE) and setting these three parameters to '0', the system will use an effective compromise that dynamically changes based on workload.
    My suggestion is that the SGA_TARGET and the PGA_AGGREGATE_TARGET be set to ensure the system does not start swapping - when considering all the other normal memory requirements on the system.

  • How to understand "outbound parameters" and "inbound parameters" in WE20?

    Hi,
    How to understand "outbound parameters" and "inbound parameters" in transaction code:WE20? Which side is based to set the outbound/inbound parameters?
    As I can only set "outbound parameters" for the both partner type:customer and vendor.
    so, When do we need to set the parameter "inbound parameter"?
    Thanks.

    Hi,
    If you deals with inbound IDoc processing then you need only to maintain partner profile for inbound parameter.
    However, if you deal with outbound IDoc processing then you need to setup partner profile for outbound parameter.
    In special case, you may need to setup both inbound and outbound parameters for example the sender needs to have confirmation or acknowledgement for completion of inbound IDoc processing.
    Please check this links and should help you to learn/start with ALE.
    http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    Also you can check this online document for ALE and IDoc.
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEIO/BCMIDALEIO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDALEPRO/BCMIDALEPRO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFAALEQS/CABFAALEQS.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVEDISC/CAEDISCAP_STC.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVEDI/CAEDI.pdf
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward points if helpful.

  • Kernel parameters for ebs 11.5.10 and db 10.2.0.4

    HI,
    is there any doc describing the kernel parameters(settings) in order to install the 11.5.10 EBS System on Linux Enterprise Edition(v. 4.6).... something like the Metalink note: 265121.1(Requirements for Installing Oracle9i R2 (9.2.0) on RHEL3)...
    Thank you,
    Sim

    Sim,
    Please refer to:
    Note: 294932.1 - Recommendations to Install Oracle Applications 11i
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=294932.1
    Note: 316806.1 - Oracle Applications Installation Update Notes, Release 11i (11.5.10.2)
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=316806.1

  • IOMMU explanation of kernel parameters

    Hello!
    I've set up an HTPC with an AMD A4-5300 CPU, A75 (Hudson-D3) chipset and a PCIe sound card (Asus Xonar DX). Whenever I tried to get a sound out of it (e.g. aplay blubb.wav) I only got dozens of these messages in the kernel log:
    [ 46.215678] AMD-Vi: Event logged [IO_PAGE_FAULT device=02:00.0 domain=0x0000 address=0x0000000000100000 flags=0x0050]
    The messages appeared only on the first aplay command. When the program finished and I ran it again, I got no additional messages but sadly also no sound.
    Spending two evenings on this problem with google I found out it might be some trouble with IOMMU features of the processor or mainboard. So after trying out several of the options, I found iommu=soft in the kernel parameters got the sound to work fine. I have the possible options from here: https://www.kernel.org/doc/Documentatio … ptions.txt
    But I don't really understand what's the matter with this IOMMU thing. It seems like a memory management for I/O Components and seems related to DMA access. But what does the IOMMU do? Which side effects come with these options? I understand the "soft" option in that way, that some features present in hardware are now managed in software. "can be used to prevent the of an available hardware IOMMU" sounds even worse since the option might completely disable the hardware feature. But is this really bad? I mean with the option I finally have good quality audio output but for what price? Can I expect disadvantages from this setting? Since I'm not really into all this kernel and hardware stuff, this all seems so confusing. Or is it possible that the error causing the above message has a totally different source and it's just luck that the option kind of worked around it?
    Can anyone here maybe explain even a little bit about the IOMMU and what might have caused these problems?
    I opened a thread in the multimedia section here where I asked for help to get audio output but no one replied. So I think the people living over there are also not familiar with the topic. And since I found kind of a workaround which is hardware related I hope it is ok to open this other thread to maybe get some explanation about what I have really done there...

    Thanks for the detailed explanation!
    But isn't the GART something Video Card related? Or is it that what you mean with "abusing" the GART?
    So when I set "iommu=soft" the IOMMU basically gets disabled? Quoting the file about the boot options, it says:
    3. <arch/x86_64/kernel/pci-swiotlb.c> : Software IOMMU implementation. Used
          e.g. if there is no hardware IOMMU in the system and it is need because
          you have >3GB memory or told the kernel to us it (iommu=soft))
          Kernel boot message: "PCI-DMA: Using software bounce buffering
          for IO (SWIOTLB)"
    What I don't fully understand... Is the IOMMU actually a CPU feature or is it on the mainboard's hand? For what I read, the A-Processors from AMD are IOMMU supported, so my setup should work with it. Or could it be my mainboard not having correct support for it? (MSI FM2-A75IA-E53)
    For testing, I disabled the IOMMU switch in GRUB, dmesg shows the kernel already automatically chooses software buffering. ("[    0.654086] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)") but then I get those tons of AMD-Vi messages. When I set the IOMMU to force software buffering, I have not a single problem. The entry in dmesg also tells it is using software bounce buffering. But shouldn't there be no difference if the kernel chooses the software option or if I force it to do so?

  • Kernel parameters problem (512 mb RAM)

    Hi,
    I've installed Oracle on RedHat 5.2 (2.0.36) on a machine with
    512 mb memory.
    First I've recompiled the kernel how Oracle says and basing in
    some documents (like
    http://jordan.fortwayne.com/oracle/oralinux.html). Of course I've
    saved a copy of the old kernel. The linux was ok, the command
    ipcs -l shows the new values of the kernel parameters, but Oracle
    didn't start. I've restored the copy of the kernel, the ipcs -l
    shows the old values and now Oracle is running, with a SGA of
    almost 300 mb.
    Is there some problem in that? Will the machine loose performance
    because the miminum values of the kernel parameters?
    Best regards,
    Ari
    null

    Ari Arantes (guest) wrote:
    : Hi,
    : I've installed Oracle on RedHat 5.2 (2.0.36) on a machine with
    : 512 mb memory.
    : First I've recompiled the kernel how Oracle says and basing in
    : some documents (like
    : http://jordan.fortwayne.com/oracle/oralinux.html). Of course
    I've
    : saved a copy of the old kernel. The linux was ok, the command
    : ipcs -l shows the new values of the kernel parameters, but
    Oracle
    : didn't start. I've restored the copy of the kernel, the ipcs -
    l
    : shows the old values and now Oracle is running, with a SGA of
    : almost 300 mb.
    : Is there some problem in that? Will the machine loose
    performance
    : because the miminum values of the kernel parameters?
    : Best regards,
    : Ari
    I have a setup similar to yours (384 MB instead of 512 MB),
    and I spent some time looking at the parameters.
    You CANNOT use the value for SHMMAX from the Oracle manual!
    As it says at http://jordan.fortwayne.com/oracle/oralinux.html
    "Should you decided to change these parameters, if you set
    the SHMMAX to what Oracle says, you are telling the system
    to allow a shared memory segment to grow as large as 4 Gigs.
    Many users have reported problems setting the value this
    high."
    Sounds like you are another one of those users, eh?
    If you read on down, the guy who wrote that web page never
    used over 128 MB for SHMMAX. I'd take a strong hint from that.
    =====
    Oracle wants you to use 4GB-1 as the SHMMAX value. That
    equates to (1<<32)-1. As we shall see, that is not allowed
    without "breaking the rules" for the i386 architecture.
    If you carefully read through the header file, you will find
    out that the **actual maximum value** for SHMMAX is 256 MB.
    You can tell this two ways. Take a look at the file at:
    /usr/src/linux/include/asm/shmparam.h
    Near the top of the file is:
    /* address range for shared memory attaches if
    no address passed to shmat() */
    #define SHM_RANGE_START 0x50000000
    #define SHM_RANGE_END 0x60000000
    Note that the above is 256 MB (0x10000000), or (1<<28). This
    is one potential source of trouble. I don't know if some other
    files someplace else in the kernel specify uses for address
    ranges adjacent to the above range, which I take to be the
    "practical maximum" without redefining that range. Personally,
    I wouldn't want to mess with the above unless I **really**
    knew what I was doing (and I'll be the first to admit I don't).
    =====
    Farther down you will see some more lines (not together)
    that look like this:
    #define SHMID_BITS 7
    #define SHMIDX_BITS 15
    * SHMID_BITS + SHMIDX_BITS must be <= 24 on the i386 and
    * SHMMAX <= (PAGE_SIZE << SHMIDX_BITS).
    #define SHMMAX 0x2000000 /* max shared seg
    size (bytes) */
    Now, 7 + 15 is 22, so you could go up a couple of bits if you
    had to. To avoid making the table any larger, I would suggest:
    #define SHMIDX_BITS 17
    But, 17 turns out to produce a result larger than the "practical
    maximum" (256 MB) above. To see why takes a little more
    explaining.
    And if you don't change this at all, then the maximum possible
    value for SHMMAX is 4096 [the PAGE_SIZE) << 15 [_SHM_IDX_BITS],
    or rather (1<<27).
    Now, that is exactly half of the (1<<28) "practical maximum" I
    mentioned above.
    So, if you always want the maximum amount of shared memory,
    then change the definition of SHMMAX to the following:
    #define SHMMAX (PAGE_SIZE<<_SHM_IDX_BITS) /* max shared seg
    size (bytes) */
    That gives you 128 MB in and of itself (as compared with 32 MB
    as Red Hat 5.2 is delivered).
    If you want the full 256 MB that is allowed for in the memory
    map, then you need to also change:
    #define SHMIDX_BITS 16
    The above value is **exactly** what is recommended on the web
    page you were following (above).
    If you want to keep going up, you will need to change the
    memory space allocated for shared memory as defined by
    SHM_RANGE_START and SHM_RANGE_END, something I advise against.
    =====
    Even on a machine with 512 MB of "real" memory, I find it hard
    to believe that there would be any substantial benefit to
    having a maximum shared memory space greater than 256 MB. The
    reason is that Oracle can use multiple shared memory spaces.
    It requires a minimum of ten (10), according to the installation
    manual, but the Red Hat 5.2 distribution supplies SHMMNI (128)
    of them. That will allow each Oracle process to have a total
    of up to 32 GB of shared memory (128 times 256 MB) and all it
    asks for is 40 GB (10 times 4 GB), so it has plenty, IMHO.
    =====
    Let me say a few more words about the web page you were using
    for configuration advice. That person actually **reduced** the
    amount of shared memory segments by specifying **lower values**
    for SHMMNI and SHMSEG (not to mention the semaphores).
    I'd **STRONGLY** recommend **NOT CHANGING** those other values!
    Its my understanding that Oracle can make up for the smaller
    maximum shared memory segment size by using more shared memory
    segments. So, if you reduce those, you are essentially shooting
    yourself in the foot by taking away what you are giving with
    increasing the maximum segment size.
    =====
    Good luck, and may this farce be with you!
    null

  • Unable to set  kernel parameters using solaris 10

    HI,
    I'm trying to install DB2 8.2 on solaris 10.the problem i'm encountering in installation is unable to set MSGMAX and MSGMNB kernel parameters. I tried setting the new replacement parameter process.max-msq-qbytes through projects->Resource Control from the management console.but still uinable to set the parameters.
    Can anyone help me in setting the above kernel parameters.
    Its not possible to set it thru /etc/system.
    thanx
    guru

    HI,
    I'm trying to install DB2 8.2 on solaris 10.the problem i'm encountering in installation is unable to set MSGMAX and MSGMNB kernel parameters. I tried setting the new replacement parameter process.max-msq-qbytes through projects->Resource Control from the management console.but still uinable to set the parameters.
    Can anyone help me in setting the above kernel parameters.
    Its not possible to set it thru /etc/system.
    thanx
    guru

  • Unable to set kernel parameters using Reource Control

    HI,
    I'm trying to install DB2 8.2 on solaris 10.the problem i'm encountering in installation is unable to set MSGMAX and MSGMNB kernel parameters. I tried setting the new replacement parameter process.max-msq-qbytes through projects->Resource Control from the management console.but still uinable to set the parameters.
    Can anyone help me in setting the above kernel parameters.
    Its not possible to set it thru /etc/system.
    thanx
    guru

    I finally had some time to find the actual syntax for tuning process.max-msq-qbytes and process.max-msg-messages. prctl will change those paramaters for an existing process.
    As a proof of concept I changed process.max-msg-messages to a 64k. process 2221 is my shell.
    prctl -n process.max-msg-messages  -r -v 64k 2221
    bash-3.00# prctl 2221
    process: 2221: -csh
    NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
    process.max-port-events
            privileged      65.5K       -   deny                                 -
            system          2.15G     max   deny                                 -
    process.max-msg-messages
            privileged      64.0K       -   deny                                 -
            system          4.29G     max   deny                                 -
    process.max-msg-qbytes
            privileged      64.0KB      -   deny                                 -
            system          4.00GB    max   deny                                 -And now to make this persist across reboots...
    So long as I'm experimenting, I'll use projadd and add a new project which just includes me and not the rest of the users in the group staff.
    bash-3.00# projadd -p 115 -U testuser \
    -K "process.max-msg-messages=(priv,64K,deny)" \
    -K "process.max-msg-qbytes=(priv,64K,deny)" \
    user.me This creates the following /etc/project:
    (note the last line is all on one line in the real file minus the \.)
    placer% cat /etc/project
    system:0::::
    user.root:1::::
    noproject:2::::
    default:3::::
    group.staff:10::::
    user.me:115::testme::\
    process.max-msg-messages=(priv,64000,deny);process.max-msg-qbytes=(priv,65536,deny)After a reboot I checked the values by loging in under my user and running prctl.
    placer% prctl $$
    process: 419: -csh
    NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
    process.max-port-events
            privileged      65.5K       -   deny                                 -
            system          2.15G     max   deny                                 -
    process.max-msg-messages
            privileged      64.0K       -   deny                                 -
            system          4.29G     max   deny                                 -
    process.max-msg-qbytes
            privileged      64.0KB      -   deny                                 -
            system          4.00GB    max   deny                                 -
    process.max-sem-ops
            privileged        512       -   deny                                 -
            system          2.15G     max   deny                                 -
    ...Solaris 10 has different tunables and default values from 8 and 9. It's default tunables should be good for most applications per a given system's hardware. There are some great blog articles, and discussions on opensolaris.org and blogs.sun.com on tuning that explain the intent of tuning and why we shouldn't have to tune.
    Cheers,
    ~~sa

  • Unable to set kernel parameters using Reource Control in solaris 10

    HI,
    I'm trying to install DB2 8.2 on solaris 10.the problem i'm encountering in installation is unable to set MSGMAX and MSGMNB kernel parameters. I tried setting the new replacement parameter process.max-msq-qbytes through projects->Resource Control from the management console.but still uinable to set the parameters.
    Can anyone help me in setting the above kernel parameters.
    Its not possible to set it thru /etc/system.
    thanx

    HI,
    I'm trying to install DB2 8.2 on solaris 10.the problem i'm encountering in installation is unable to set MSGMAX and MSGMNB kernel parameters. I tried setting the new replacement parameter process.max-msq-qbytes through projects->Resource Control from the management console.but still uinable to set the parameters.
    Can anyone help me in setting the above kernel parameters.
    Its not possible to set it thru /etc/system.
    thanx

  • [SOLVED]How to patch the kernel? And other questions

    Like the same user who started this thread I'm suffering from hibernation resuming troubles using kernel 2.6.38. In that thread was posted a soluttion that involves patching the kernel.
    The patch to apply is this:
    http://git.kernel.org/?p=linux/kernel/g … e3e9fc8684
    Waiting for the bug to be corrected and a new version supplied is not an option, because this laptop is my main computer and I heavly rely on hibernation.
    Here's my trouble now. I don't know if it is possible to patch without recompiling the whole kernel, or it has to be compiled with that patch applied. I have seen the archlinux's wiki guide about compiling the kernel, but found nothing about applying patches (maybe I didn't searched with enought depth).
    In case there is needed a full compilation, should I use the vanilla kernel, the Arch Linux one or any of the AUR ones (I said AUR because they're the first that came to my mind)? Should i expect a performance gain with this (apart from fixing the hibernation bug)?
    Maybe i'm just doing a bunch of dumb questions, and the only thing I need is to search deeply on the wiki. In that case, please tell me. If not, I rather get some answers around kernel patching and / or compiling questions.
    Edit: In addittion, it is possible that all this questions are just newbie ones, I don't know, but as I am willing to learn from this I will appreciate any info or documentation about it.
    Thank you.
    Last edited by ethail (2011-04-12 06:30:48)

    From the source tree (/usr/src/linux-whatever) execute
    patch -p1 < /path/to/fix.patch
    then recompile kernel from the source tree.
    Basically that consists of executing the following commands from the source tree:
    make menuconfig
    make
    make modules_install
    cp -v System.map /boot/System.map-CUSTOM
    cp -v arch/x86/boot/bzImage /boot/vmlinuz-CUSTOM
    mkinitcpio -k 2.6.38-CUSTOM -g /boot/kernel-CUSTOM.img
    and you need to add menu entry in /boot/grub/menu.lst
    -k 2.6.38-CUSTOM should corespond to /lib/modules/2.6.38-CUSTOM (replace 2.6.38-CUSTOM with the name of your module directory, name depends on the kernel version and suffix that you gave in menuconfig). Regarding kernel configuration in menuconfig - I can't help you, you could use arch stock kernel config (zcat /proc/config.gz > /usr/src/linux-whatever/.config)
    I do these kind of things this way - maybe someone else have a more elegant solution.

  • Can't update to 10.6.8 kernel panic and pcscd.pub wrong block count

    Hi there, as the title said, I cannot update to the recent 10.6.8 v1.1 (nor v1 for what it matters). All seems going fine till the iMac reboots, then a kernel panic is generated. Only way out is to reinstall 10.6.7 COMBO.
    Both Disk Utility and Disk Warrior agree on the issue, they both say they have repaired and the iMac goes into kernel panic with again pcscd.pub block count error (should be 16 instead of 17). Re-installing 10.6.7 everything is happy again.
    Any idea? Hard disk tests with Disk Warriors show nothing and the HD is journaled.

    See
    What is a kernel panic,
    Technical Note TN2063: Understanding and Debugging Kernel Panics,
    Mac OS X Kernel Panic FAQ,
    Resolving Kernel Panics, and
    Tutorial: Avoiding and eliminating Kernel panics for more details.

  • Kernel parameters -maximum threads per process

    How can we change the kernel parameters also how can we increase the maximum number of threads allowed .
    How can we increase maimum perocess per used id .

    There is no kernel parameter limiting the maximum
    number of threads allowed. If you are talking about
    user level threads, you will run into virtual address
    space limitations at about 3000 for a process
    assuming 32-bit address space and default
    stack size of 1M per thread, and assuming you are
    not using the alternate thread library (see threads(3thr))
    or Solaris 9. If you need more than this many
    threads at the same time, I suspect you are doing something
    incorrectly. Otherwise, try using a smaller stack size
    per thread. If you are running on Solaris 9, or using
    the alternate thread library, both give you a 1x1
    thread model, i.e., each user thread has a corresponding
    kernel entity (lwp). In this case, you will cause
    your machine to hang by eating up all available
    space for lwp's. In either case, the question should be:
    "how do I limit the number of threads per process?", since
    there is currently no limitation other than space.
    In Solaris 9, you can use resource management to
    limit the number of lwp's (and therefore user threads)
    per process.

  • Kernel Parameters on Red Hat Linux

    The installation instructions require us to set cetain kernel
    parameters, such as SHMMAX, SHMSEG, SEMMNS, and so on.
    Does anyone know how this is done for Red Hat Linux? I have
    been hunting around the documentation and public domain web-
    sites for a couple of weeks now and I haven't found any
    reference to how to set these parameters.
    Eternally grateful for any insights...
    Cheers!
    Stuart Housden
    null

    I had problems with 8i and 32Meg of SHMMAX (sometimes, when I
    published an EJB, Oracle crashed). I didn't recompiled the
    kernel, only did
    echo 134217728 > /proc/sys/kernel/shmmax.
    This limited the maximum shared memory to 128Meg (I installed
    with JavaVM enabled), and I my problems got away.
    Robson.
    Anwar (guest) wrote:
    : Stuart Housden (guest) wrote:
    : : The installation instructions require us to set cetain kernel
    : : parameters, such as SHMMAX, SHMSEG, SEMMNS, and so on.
    : : Does anyone know how this is done for Red Hat Linux? I have
    : : been hunting around the documentation and public domain web-
    : : sites for a couple of weeks now and I haven't found any
    : : reference to how to set these parameters.
    : : Eternally grateful for any insights...
    : : Cheers!
    : : Stuart Housden
    : This question was replied to multiple times on the list before,
    : but here goes. Check out:
    : http://jordan.fortwayne.com/oracle
    : Basically, you have to edit the kernel header files, and
    : recompile the kernel. Read the Kernel-HOWTO too.
    : Anwar.
    null

Maybe you are looking for

  • Boot camp outside mac

    Hi, Does anyone know if bootcamp can create a partition on an external hard drive so i don't need to sacrifice any mac space? Also i have a new macbook which has no sign of boot camp in utilities folder,what is the best route to get it? a down load o

  • Problems embedding youtube videos

    Ok, so i copy de code from youtube an directly paste it in indesign. I go to the overlay and enable autoplay. I did this before and it worked, now it doesn't. Anyone knows why??

  • ColdFusion 4.0 and Windows 2003 server

    Greetings, I'm a newbie to coldfusion so please excuse the ignorance. I have a ColdFusion 4.0 applications sitting on a win2k that need move to a win2003 servers. Does 4.0 run on win 2003 and can be installed on it? The application is going to be ret

  • Allow files being copied to merge with existing files instead of replacing

    As a windows switcher, I am used to the fact that I can drag Folder A with Folder B and C inside on Hard Drive 1 over to Folder A with Folder D and E inside on Hard Drive 2 and it would just merge the two giving you Folder A with B,C,D and E on hard

  • Partitioning w/out Losing Data on External HDD

    Hello All, I have a WD My Studio External HDD of 500GB. It contains invaluable data, however I need to temporarily create a bootable partition. The main goal is NOT to lose any data. Is this feasible through Disk Utility? Many thanks!