[syslinux] Could not find kernel image : vmlinuz

Sandeep Agarwal sandeepagarwal.1980 at gmail.com
Wed Aug 12 23:02:24 PDT 2009


On Sun, Aug 9, 2009 at 1:38 AM, Miller, Shao<Shao.Miller at yrdsb.edu.on.ca> wrote:
> Good day Sandeep,
>
> About your troubles downloading "vmlinuz" with PXELINUX:
>
> I'm afraid that I've gotten lost in this thread.  Have you tried
> disabling serial output in the PXELINUX config-file
> (pxelinux.cfg/default)?  Have you tried using a kernel name other than
> "vmlinuz"?  Have you tried having no default label specified in the
> config-file so that you get a "boot:" prompt via serial?  If so, and you
> try entering "vmlinuz" at that "boot:" prompt, does that download the
> kernel?
>
> Apologies if I've missed the results of these tests.
>
> - Shao Miller
>

hello Shao,

I did tries your suggestions of removing serial output but it did not
worked. I also tried removing default label in the PXELINUX config
file but same results.

I tried download the file manually from tftp which downloaded fine.

Looking at the difference in the strace results of both communication
its clear that select system call timeouts on the case of PXE linux.
Below are the extracts of the two data transfers:

Trying to get the file from command line using "tftp <ipaddress>"
------------------------------------------------------------------------------------------
[pid 19981] gettimeofday({1250141590, 642907}, NULL) = 0
[pid 19981] fcntl64(0, F_GETFL)         = 0x2 (flags O_RDWR)
[pid 19981] fcntl64(0, F_SETFL, O_RDWR|O_NONBLOCK) = 0
[pid 19981] recv(0, "\0\4\0246", 65468, 0) = 4
[pid 19981] fcntl64(0, F_GETFL)         = 0x802 (flags O_RDWR|O_NONBLOCK)
[pid 19981] fcntl64(0, F_SETFL, O_RDWR) = 0
[pid 19981] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 19981] send(0,
"\0\3\0247\37\200\0\0\0\0\307\200@\2\0\0\t\0\0\0H\203\300"..., 516, 0)
= 516
[pid 19981] read(1,
"u\360H\211\rg\315\0\0\211\5i\315\0\0001\377\351g\376\377"..., 4096) =
4096
[pid 19981] gettimeofday({1250141590, 643264}, NULL) = 0
[pid 19981] select(1, [0], NULL, NULL, {1, 0}) = 1 (in [0], left {1, 0})
------------------------------------------------------------------------------------------

PXE Boot results
------------------------------------------------------------------------------------------
[pid 24543] open("vmlinuz", O_RDONLY|O_LARGEFILE) = 1
[pid 24543] fstat64(1, {st_mode=S_IFREG|0777, st_size=2637056, ...}) = 0
[pid 24543] fcntl64(1, F_GETFL)         = 0x8000 (flags O_RDONLY|O_LARGEFILE)
[pid 24543] fstat64(1, {st_mode=S_IFREG|0777, st_size=2637056, ...}) = 0
[pid 24543] mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fbd000
[pid 24543] _llseek(1, 0, [0], SEEK_CUR) = 0
[pid 24543] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 24543] send(0, "\0\6tsize\0002637056\0blksize\0001440\0", 29, 0) = 29
[pid 24543] gettimeofday({1250142444, 489180}, NULL) = 0
[pid 24543] select(1, [0], NULL, NULL, {1, 0}) = 0 (Timeout)
------------------------------------------------------------------------------------------

The above select system call timeout and the result is the same, only
the pid changes, till it reaches total number of retries.

Let me know if complete dump of strace if required.

Thanks

Sandeep




More information about the Syslinux mailing list