Re: Problem with printk()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 30 Oct 2001, Stolz.Eric wrote:

> Hello list,
>
> I have a Problem with the printk function in a kernel module.

[snip]

> d_Result = (DOUBLE) l_InputValue / (DOUBLE) l_OffsetValue;
> printk("d_Result: %f\n", d_Result);

[snip - printf '%f']

/kernel/path/kernel/printk.c

asmlinkage int printk(const char *fmt,...)
{
	...
	/* Emit the output into the temporary buffer */
	va_start(args, fmt);
	printed_len = vsnprintf(printk_buf, sizeof(printk_buf), fmt,
args);
	va_end(args);
	...
}

we see vsnprintf does the work. ok, let's look at it, at
/kernel/path/lib/vsprintf.c

as you can see, the resason you got '%f' in the output is because the
kernel does not recognize the '%f' format specifier - in other words, no
floating point support in printk.
-- 
mulix

http://www.pointer.co.il/~mulix/
http://syscalltrack.sf.net/


-
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
IRC Channel:   irc.openprojects.net / #kernelnewbies
Web Page:      http://www.kernelnewbies.org/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux