Re: mm->context[NR_CPUS] and pci fix check [was Re: Alpha SCSI error on 2.4.0-test11]

From: David S. Miller (davem@redhat.com)
Date: Fri Dec 15 2000 - 12:11:31 EST


   Date: Fri, 15 Dec 2000 16:46:26 +0100
   From: Andrea Arcangeli <andrea@suse.de>

   This one breaks all archs but i386 and alpha. If some arch maintainer likes me
   to update its arch blindly implementing mm_arch structure as an `unsigned long
   context' and fixing up the miscompilation I will do.

Can you name the mm_struct member "context" still instead of
"mm_arch"? Because many ports will simply:

typedef unsigned long mm_arch_t;

Then all the code changes will make the accesses look less
meaningful. Consider:

        if (CTX_VALID(mm->mm_arch))

whereas before the code said:

        if (CTX_VALID(mm->context))

which tells the reader lot more. In fact, retaining the "context" member
name allows most ports to operate with only one change, creating
the asm/mm_arch.h header. You can in fact do this for all ports
which care about MMU tlb contexts (a simple grep such as
egrep -e "m->context" `find . -type f -name "*.[ch]"`
will show you which ports care).

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.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Dec 15 2000 - 21:00:32 EST