Re: [PATCH] Linux Kernel Markers 0.13 for 2.6.17

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

 



* Jeremy Fitzhardinge ([email protected]) wrote:
> Mathieu Desnoyers wrote:
> >Hi,
> >
> >Ok, so as far as I can see, we can only control the execution flow by 
> >modifying
> >values in the output list of the asm.
> >
> >Do you think the following would work ?
> >
> >
> >#define MARK_JUMP(name, format, args...) \
> >        do { \
> >                char condition; \
> >                asm volatile(   ".section .markers, \"a\";\n\t" \
> >                                        ".long 0f;\n\t" \
> >                                        ".previous;\n\t" \
> >                                        "0:\n\t" \
> >                                        "movb $0,%1;\n\t" \
> >                                : "+m" (__marker_sequencer), \
> >                                "=r" (condition) : ); \
> >                if(unlikely(condition)) { \
> >                        MARK_CALL(name, format, ## args); \
> >                } \
> >        } while(0)
> >  
> 
> Yep, that looks reasonable.  Though you could just directly test a 
> per-marker enable flag, rather than using "condition"...
> 

The goal of the local variable "condition" here is that it will be forced to be
a register (=r in asm output), so there is no memory load involved (immediate
value).

I am not sure I understand your suggestion correctly.. do you mean having
a per-marker flag that would be loaded and tested at every marker site ?


Mathieu

OpenPGP public key:              http://krystal.dyndns.org:8080/key/compudj.gpg
Key fingerprint:     8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68 
-
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