# Using pickaxe to track changed symbol CR4_FEATURES_ADDR

5 messages from 2006-06-05 to 2006-06-05. Participants: Thomas Glanzmann, Andreas Ericsson, Junio C Hamano, Randy.Dunlap.
Thread: https://gitlist.dev/t/4400

## Thomas Glanzmann, 2006-06-05 10:26

Subject: Using pickaxe to track changed symbol CR4_FEATURES_ADDR
Message-ID: <20060605102627.GB24346@cip.informatik.uni-erlangen.de>
URL: https://gitlist.dev/e/20060605102627.GB24346%40cip.informatik.uni-erlangen.de

```
Hello,
I am looking for the symbol CR4_FEATURES_ADDR which must be gone in one
of the last kernel revision. Now how I do use pickaxe to track any
changes that involve my missing symbol? Or is there a better way to
track that change down?

        Thomas

```

## Andreas Ericsson, 2006-06-05 12:43

Subject: Re: Using pickaxe to track changed symbol CR4_FEATURES_ADDR
Message-ID: <448426FA.1090204@op5.se>
URL: https://gitlist.dev/e/448426FA.1090204%40op5.se
In-Reply-To: <20060605102627.GB24346@cip.informatik.uni-erlangen.de>

```
Thomas Glanzmann wrote:
> Hello,
> I am looking for the symbol CR4_FEATURES_ADDR which must be gone in one
> of the last kernel revision. Now how I do use pickaxe to track any
> changes that involve my missing symbol? Or is there a better way to
> track that change down?
> 

$ git whatchanged -S'CR4_FEATURES_ADDR'

last time I checked, but that was 10 days and an immense amount of cheap 
turkish alcohol ago so it's quite possible that I'm wrong.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

```

## Junio C Hamano, 2006-06-05 20:03

Subject: Re: Using pickaxe to track changed symbol CR4_FEATURES_ADDR
Message-ID: <7v8xob4bft.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7v8xob4bft.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <20060605102627.GB24346@cip.informatik.uni-erlangen.de>

```
Thomas Glanzmann <sithglan@stud.uni-erlangen.de> writes:

> I am looking for the symbol CR4_FEATURES_ADDR which must be gone in one
> of the last kernel revision. Now how I do use pickaxe to track any
> changes that involve my missing symbol? Or is there a better way to
> track that change down?

None of the major recent versions seem to have the symbol.

	: gitster; git grep -e CR4_FEATURES_ADDR \
        	v2.6.12-rc2 v2.6.12 v2.6.13 v2.6.14 v2.6.15 \
        	v2.6.16

and I did not get any google hits for "CR4_FEATURES_ADDR".  Are
you spelling it right?

```

## Randy.Dunlap, 2006-06-05 20:11

Subject: Re: Using pickaxe to track changed symbol CR4_FEATURES_ADDR
Message-ID: <20060605131151.b8878c7c.rdunlap@xenotime.net>
URL: https://gitlist.dev/e/20060605131151.b8878c7c.rdunlap%40xenotime.net
In-Reply-To: <7v8xob4bft.fsf@assigned-by-dhcp.cox.net>

```
On Mon, 05 Jun 2006 13:03:34 -0700 Junio C Hamano wrote:

> Thomas Glanzmann <sithglan@stud.uni-erlangen.de> writes:
> 
> > I am looking for the symbol CR4_FEATURES_ADDR which must be gone in one
> > of the last kernel revision. Now how I do use pickaxe to track any
> > changes that involve my missing symbol? Or is there a better way to
> > track that change down?
> 
> None of the major recent versions seem to have the symbol.
> 
> 	: gitster; git grep -e CR4_FEATURES_ADDR \
>         	v2.6.12-rc2 v2.6.12 v2.6.13 v2.6.14 v2.6.15 \
>         	v2.6.16
> 
> and I did not get any google hits for "CR4_FEATURES_ADDR".  Are
> you spelling it right?

include/asm-i386/processor.h has names like:

/*
 * Intel CPU features in CR4
 */
#define X86_CR4_VME		0x0001	/* enable vm86 extensions */
#define X86_CR4_PVI		0x0002	/* virtual interrupts flag enable */
#define X86_CR4_TSD		0x0004	/* disable time stamp at ipl 3 */
#define X86_CR4_DE		0x0008	/* enable debugging extensions */
#define X86_CR4_PSE		0x0010	/* enable page size extensions */
#define X86_CR4_PAE		0x0020	/* enable physical address extensions */
#define X86_CR4_MCE		0x0040	/* Machine check enable */
#define X86_CR4_PGE		0x0080	/* enable global pages */
#define X86_CR4_PCE		0x0100	/* enable performance counters at ipl 3 */
#define X86_CR4_OSFXSR		0x0200	/* enable fast FPU save and restore */
#define X86_CR4_OSXMMEXCPT	0x0400	/* enable unmasked SSE exceptions */

extern unsigned long mmu_cr4_features;

static inline void set_in_cr4 (unsigned long mask)
{
	unsigned cr4;
	mmu_cr4_features |= mask;
	cr4 = read_cr4();
	cr4 |= mask;
	write_cr4(cr4);
}

static inline void clear_in_cr4 (unsigned long mask)
{
	unsigned cr4;
	mmu_cr4_features &= ~mask;
	cr4 = read_cr4();
	cr4 &= ~mask;
	write_cr4(cr4);
}


but nothing exactly like you asked about.

---
~Randy

```

## Thomas Glanzmann, 2006-06-05 20:16

Subject: Re: Using pickaxe to track changed symbol CR4_FEATURES_ADDR
Message-ID: <20060605201631.GD4552@cip.informatik.uni-erlangen.de>
URL: https://gitlist.dev/e/20060605201631.GD4552%40cip.informatik.uni-erlangen.de
In-Reply-To: <20060605131151.b8878c7c.rdunlap@xenotime.net>

```
Hello Randy,
I confused it. CR4_FEATURES_ADDR was in the glue code of parallels
binary only modules, but it sounded like a a MMU definition. Thanks a
lot. That was why my pickaxe did not work out in the first place.
However I have a workaround for the damn build problem.

See http://wwwcip.informatik.uni-erlangen.de/~sithglan/parallels/

Thanks,
        Thomas

```
