On Tue, Jul 22, 2008 at 10:47:58PM -0300, Luis Machado wrote:
> +void do_dabr(struct pt_regs *regs, unsigned long address,
> +                 unsigned long error_code)
> +{
> +     siginfo_t info;
> +
> +#if !(defined(CONFIG_4xx) || defined(CONFIG_BOOKE))
> +     if (notify_die(DIE_DABR_MATCH, "dabr_match", regs, error_code,
> +                     11, SIGSEGV) == NOTIFY_STOP)
> +             return;
> +
> +     if (debugger_dabr_match(regs))
> +             return;
> +
> +     /* Clear the DAC and struct entries.  One shot trigger.  */
> +#else /* (defined(CONFIG_4xx) || defined(CONFIG_BOOKE)) */
> +     mtspr(SPRN_DBCR0, mfspr(SPRN_DBCR0) & ~(DBSR_DAC1R | DBSR_DAC1W
> +                                                     | DBCR0_IDM));
> +#endif

Some comment, first the above negate conditional
looks rather ugly, I'd rather do a

#if defined(CONFIG_4xx) || defined(CONFIG_BOOKE)
        dbcr0 case
#else
        dabr case
#endif

second I wonder why we have the notify_die only for one case, that seems
rather odd.  Looking further the notify_die is even more odd because
DIE_DABR_MATCH doesn't actually appear anywhere else in the kernel.
I'd suggest simply removing it.

> +     /* For processors using DABR (i.e. 970), the bottom 3 bits are flags.
> +        It was assumed, on previous implementations, that 3 bits were
> +        passed together with the data address, fitting the design of the
> +        DABR register, as follows:
> +
> +        bit 0: Read flag
> +        bit 1: Write flag
> +        bit 2: Breakpoint translation
> +
> +        Thus, we use them here as so.  */

Can you redo this in the normal Linux comment style, ala:

        /*
         * For processors using DABR (i.e. 970), the bottom 3 bits are flags.
         *  It was assumed, on previous implementations, that 3 bits were
         *  passed together with the data address, fitting the design of the
         *  DABR register, as follows:
         *
         *  bit 0: Read flag
         *  bit 1: Write flag
         *  bit 2: Breakpoint translation
         *
         *  Thus, we use them here as so.
         */

and similar in few other places.

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to