Alan Cox wrote:
> > -asmlinkage long sys_sched_rr_get_interval(pid_t pid, struct timespec *interval)
> > +asmlinkage long sys_sched_rr_get_interval(struct timespec *interval)
> > {
>
> This is a syscall you cant go around deleting arguments
well, as i am on a solaris box for now, i can't check it but it seems to
me it's not in the 169 official syscalls and thus may be optimized by
not push/pop unused parameters. Am i wrong ?
push/pop is a characteristic of x86, on other architectures syscall
arguments are passed in fixed registers, and in fact this is true on
Intel when a function is marked as FASTCALL().
> > +++ drivers/net/8390.c Fri Sep 24 01:59:19 1999
> > @@ -149,7 +149,6 @@
> > int ei_open(struct net_device *dev)
> > {
> > unsigned long flags;
> > - struct ei_device *ei_local = (struct ei_device *) dev->priv;
> >
> > /* This can't happen unless somebody forgot to call ethdev_init(). */
>
> This variable IS used.
Where ?
Via the SMP lock routines when compiling __SMP__.
> > -static inline void flush_tlb_range(struct mm_struct *mm,
> > - unsigned long start, unsigned long end)
> > +static inline void flush_tlb_range(struct mm_struct *mm)
>
> These are values used on other platforms
maybe we can turn this in a macro that developp in
__real_flush_tlb_range on ia32 and other archs where it'sn't used ?
The compiler does this optimization for you.
Please, learn, quickly, that all the world is not x86.
Later,
David S. Miller
davem@redhat.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/