Re: OT: calling kernel syscall manually

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

 



David Woodhouse writes:
On Tue, 2006-09-12 at 14:05 +0200, guest01 wrote:

3 -> using kernel directly

Ok, the third one is a little bit tricky, at least for me.
I found an example for lseek, but I don't know how to convert
that for mkdir. I don't know the necessary arguments, ..

The third one has always been broken on i386 for PIC code

No, I was just using it today in PIC i386 code.
The %ebx register gets pushed, the needed value
gets moved into %ebx, the int 0x80 is done, and
the %ebx register gets popped. Only a few odd
calls like clone() need something different.

(not that this should be needed: gcc is broken
if it can't save/restore the needed registers)

and was pointless anyway, since glibc provides this
functionality. The kernel method has been removed from
userspace visibility all architectures, and we plan to
remove it entirely in 2.6.19 since it's not at all useful.

It's damn useful. Hint: Linux does not require glibc.

I could hack up my own assembly. I did that for clone(),
but I didn't enjoy that waste of my time.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux