Results 1 to 10 of 20

Thread: Knoppix 6.2 Boot from PXE

Hybrid View

  1. #1
    Quote Originally Posted by kl522 View Post
    I have asked you to read the document, you have probably not read it thoroughly yet.
    Nevermind, that's the long version of the answer. The short version of the answer is as follows :-

    You need to have a shell script called /sbin/hotplug, with execution permission, the content
    is something like this :-
    #!/bin/sh
    echo 1 > /sys/$DEVPATH/loading
    cat /lib/firmware/bnx2/$FIRMWARE > /sys/$DEVPATH/data
    echo 0 > /sys/$DEVPATH/loading

    That's will likely do the trick.
    Cheers.
    Hi, Please ignore my previous post.

    i do see that DEVPATH is the Path under /sys at which this device's sysfs directory can be found. i saw the documentation inside Documentation/firmware_class as well. From there i understood the way kernel is calling the firmware and how it needs to be passed from the user end. per your advise, I've created a script /sbin/hotplug as below:-

    #!/bin/sh
    echo 1 > /sys/$DEVPATH/loading
    cat /lib/firmware/bnx2/$FIRMWARE > /sys/class/firmware/data
    echo 0 > /sys/$DEVPATH/loading


    Now the firmware is read while loading the module and it fails with an error message as below

    firmware 0000:05:00.0: firmware_loading_store: vmap() failed
    bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
    bnx2: probe of 0000:05:00.0 failed with error -2

    I am checking bnx2 driver code on why this failure is seen.

    Thanks,
    Krishnaprasad

  2. #2
    Quote Originally Posted by krishnaprasadk View Post
    Hi, Please ignore my previous post.

    i do see that DEVPATH is the Path under /sys at which this device's sysfs directory can be found. i saw the documentation inside Documentation/firmware_class as well. From there i understood the way kernel is calling the firmware and how it needs to be passed from the user end. per your advise, I've created a script /sbin/hotplug as below:-

    #!/bin/sh
    echo 1 > /sys/$DEVPATH/loading
    cat /lib/firmware/bnx2/$FIRMWARE > /sys/class/firmware/data
    echo 0 > /sys/$DEVPATH/loading


    Now the firmware is read while loading the module and it fails with an error message as below

    firmware 0000:05:00.0: firmware_loading_store: vmap() failed
    bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
    bnx2: probe of 0000:05:00.0 failed with error -2

    I am checking bnx2 driver code on why this failure is seen.

    Thanks,
    Krishnaprasad

    It looks like the issue that i am seeing ( i.e. while loading the bnx2 firmware, vmap() call is failed ) is a known issue. i do see the link as below and it exactly matches the error code that i am seeing.

    patchwork.kernel.org/patch/49056/

    vmap is called to load the firmware data stored in /lib/firmware/bnx2/$FIRMWARE to the kernel.

    Looks like Knoppix is not yet included the fix mentioned in the above link in the kernel that they use. So i compiled ( Changed firmware_class.c in drivers/base ) and created a new bzImage using Live CD but still i face the same error. The error is as below

    firmware 0000:05:00.0: firmware_loading_store: vmap() failed
    bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
    bnx2: probe of 0000:05:00.0 failed with error -2


    Any one have faced an error like this? i am blocked my Knoppix Booting via PXE because of this issue .. any help will be highly appreciated !

    Thank you all for your time !
    - Krishnaprasad

  3. #3
    Senior Member registered user
    Join Date
    Dec 2009
    Posts
    423
    Quote Originally Posted by krishnaprasadk View Post

    Now the firmware is read while loading the module and it fails with an error message as below

    firmware 0000:05:00.0: firmware_loading_store: vmap() failed
    bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
    bnx2: probe of 0000:05:00.0 failed with error -2

    I am checking bnx2 driver code on why this failure is seen.

    Thanks,
    Krishnaprasad
    Try this improved script ( still not the best ) :-

    Code:
    #!/bin/sh
    [ -z "$FIRMWARE" ] && exit 
    echo 1 > /sys/$DEVPATH/loading
    cat /lib/firmware/$FIRMWARE > /sys/class/firmware/data
    echo 0 > /sys/$DEVPATH/loading
    Please, this is not ***NOT*** a kernel bug or something, this is
    an ***EXPECTED*** behaviour.

    Cheers.

  4. #4
    Quote Originally Posted by kl522 View Post
    Try this improved script ( still not the best ) :-

    Code:
    #!/bin/sh
    [ -z "$FIRMWARE" ] && exit 
    echo 1 > /sys/$DEVPATH/loading
    cat /lib/firmware/$FIRMWARE > /sys/class/firmware/data
    echo 0 > /sys/$DEVPATH/loading
    Please, this is not ***NOT*** a kernel bug or something, this is
    an ***EXPECTED*** behaviour.

    Cheers.
    Hello,
    Sorry if i took a wrong route. I tried the above change that you advised in /sbin/hotplug script, but still bnx2 fails to load the firmware file. I am still seeing the error message:-

    firmware_loading_store: vmap() failed

    As far as scripting is concerned, no difficulties are there.

    since i saw a kernel forum thread which shows the exact error message, i thought of following that. Also in the 6.2 DVD, kernel source is available. There also inside drivers/base, firmware_class.c doesnt have the mutex fix that the forum is suggested to use. so I believed that i am facing the same issue.

    Now that the loading of bnx2 firmware still fails with this updated script, could you please advise on how to move forward?

    I really appreciate the help that you are providing in this issue !

    - Krishnaprasad

  5. #5
    Quote Originally Posted by kl522 View Post
    Try this improved script ( still not the best ) :-

    Code:
    #!/bin/sh
    [ -z "$FIRMWARE" ] && exit 
    echo 1 > /sys/$DEVPATH/loading
    cat /lib/firmware/$FIRMWARE > /sys/class/firmware/data
    echo 0 > /sys/$DEVPATH/loading
    Please, this is not ***NOT*** a kernel bug or something, this is
    an ***EXPECTED*** behaviour.

    Cheers.

    okay..my mistake.. instead of sending the bnx2 firmware data ( /path/$FIRMWARE ) to /sys/$DEVPATH/data, i was re-directing it to /sys/class/firmware/data.

    Now i corrected that and bootup of Knoppix 6.2 from PXE is successful using NFS share... there is not even requited to check if $FIRMWARE exists or not.

    Thanks for all your patience in helping me out on this.

    Thank you !
    Krishnaprasad

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


KNOPPIX 9.1 Linux Install & Live DVD 32bit & 64bit picture

KNOPPIX 9.1 Linux Install & Live DVD 32bit & 64bit

$19.99



Windows XP, Vista, 8.1, Linux Knoppix, Office XP,  (6 CDS) picture

Windows XP, Vista, 8.1, Linux Knoppix, Office XP, (6 CDS)

$12.00



KNOPPIX USB DVD OS , BEST OF ALL HIGHLY RECOMENDED picture

KNOPPIX USB DVD OS , BEST OF ALL HIGHLY RECOMENDED

$11.99



Knoppix Live GNU Linux System 9.1 on Bootable CD / DVD / USB Flash Drive picture

Knoppix Live GNU Linux System 9.1 on Bootable CD / DVD / USB Flash Drive

$5.99



Knoppix NSM 1.2 picture

Knoppix NSM 1.2

$8.00



VINTAGE SOFTWARE | KNOPPIX STD 0.1 (SECURITY TOOLS DISTRIBUTION) picture

VINTAGE SOFTWARE | KNOPPIX STD 0.1 (SECURITY TOOLS DISTRIBUTION)

$7.97



Hamshack Live DVD-ROM picture

Hamshack Live DVD-ROM

$7.00



Vintage Linux DVD - Knoppix 5.2 - c't Magazine - 7 / 2007 - Software Collection 2 picture

Vintage Linux DVD - Knoppix 5.2 - c't Magazine - 7 / 2007 - Software Collection 2

$8.03



Knoppix 5.0.1 ULTRA RARE Linux DVD - Linux Pro Extra August 2006 picture

Knoppix 5.0.1 ULTRA RARE Linux DVD - Linux Pro Extra August 2006

$34.42