Re: floating points in kernel space

2011-01-04 Thread Victor Rodriguez
On Tue, Jan 4, 2011 at 6:43 AM, mohit verma mohit89m...@gmail.com wrote:
 hi all,
 i read somewhere that there is no floating point arithmatic supported in the
 kernel space . is it true??
 but the floating point registers and even floating point arithmatic units
 are all handled by the.( kernel i think).


 thanks in advance for help...



HI it is true , the floating point is not supported on printk , AFAIK
the only way to handle is to send it like HEX values and then some
other application like perl or python transform it to floating point

Hope it helps

Regards

Victor Rodriguez
 --
 
 MOHIT VERMA

 ___
 Kernelnewbies mailing list
 Kernelnewbies@kernelnewbies.org
 http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies



___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: floating points in kernel space

2011-01-04 Thread Dave Hylands
Hi Mohit,

On Tue, Jan 4, 2011 at 4:43 AM, mohit verma mohit89m...@gmail.com wrote:
 hi all,
 i read somewhere that there is no floating point arithmatic supported in the
 kernel space . is it true??
 but the floating point registers and even floating point arithmatic units
 are all handled by the.( kernel i think).

That is correct. In some architectures, attempts to use floating point
from the kernel will work. I've seen some x86 code that uses it.
However, with ARM for example, there is no float support in the
kernel, and some ARM architectures have no floating point support in
the hardware either. For ARM, there is a kernel implemented emulation
of the floating point instructions, but these can only be called from
user space. There are also some ARM software floating point libraries
(aka soft-fp) which can be used from user space (which are much more
efficient than using the kernel emulation library)

The kernel also doesn't support 64-bit division using the C divide
statement, unless you happen to be running on a 64-bit architecture.
There are some helper functions to achieve 64-bit division (see
div64.h).

Dave Hylands

___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: floating points in kernel space

2011-01-04 Thread Mulyadi Santosa
Hi..

On Tue, Jan 4, 2011 at 22:44, Dave Hylands dhyla...@gmail.com wrote:
 That is correct. In some architectures, attempts to use floating point
 from the kernel will work. I've seen some x86 code that uses it.


AFAIK, once x86 didn't supported due to floating point related
registers are not correctly (or even doing?) saved and restored during
context switching. So maybe it is fixed now...

-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com

___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: floating points in kernel space

2011-01-04 Thread julie Sullivan

 On Tue, Jan 4, 2011 at 22:44, Dave Hylands dhyla...@gmail.com wrote:
  That is correct. In some architectures, attempts to use floating point
  from the kernel will work. I've seen some x86 code that uses it.


 AFAIK, once x86 didn't supported due to floating point related
 registers are not correctly (or even doing?) saved and restored during
 context switching. So maybe it is fixed now...

 --


I've often wondered about this oft-cited kernel behaviour too, in my
naivety.  I understand
that this must be on a per-arch basis, but does this mean that the kernel
doesn't police FP
access at _all_ (perhaps this is what Mohit means too)? Does code like X for
example have to access it directly, or does it just use the GPU? What about
other user-space code - does it
have a separate library and do its own security? Video drivers?
Sorry if these are basic questions, I grepped for float in the kernel but
as-yet the associated
code looks really arcane to me - if anyone could answer any of these
questions generally
(if that's possible) that would be very helpful with visualizing the
mechanism.
Maybe I'm looking in the wrong place.

When I started looking at the kernel I imagined this small, neat, concise
piece of highly
efficient code so I wasn't surprised there was no float (don't laugh - how
one learns :-/ ) ...
I suppose any float per-arch 'hacks' (to get a larger word size) would not
be worth
the overhead of the mode switch and extra code?

Thanks
Julie
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies