Messages in this thread | | | Date | Wed, 29 Mar 2006 18:08:30 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH][RFC] splice support |
| |
Linus Torvalds <torvalds@osdl.org> wrote: > > > - why is the `flags' arg to sys_splice() unsigned long? Can it be `int'? > > flags are always unsigned long, haven't you noticed?
<does `man 2 open', gets confused>
> Besides, they should > never be signed, if you do bitmasks and shifting on them: "int" is > strictly worse than "unsigned" when we're talking flags.
Sure, but is there any gain in making flags 64-bit on 64-bit machines when we cannot use more than 32 bits in there anyway?
> Right now "flags" doesn't do anything at all, and you should just pass in > zero.
In that case perhaps we should be enforcing flags==0 so that future flags-using applications will reliably fail on old flags-not-understanding kernels.
But that won't work if we later define a bit in flags to mean "behave like old kernels used to". So perhaps we should require that bits 0-15 of `flags' be zero and not care about bits 16-31.
IOW: it might be best to make `flags' just go away, and add new syscalls in the future as appropriate.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |