Subject: Re: ALIGNED_POINTER() checks in drivers
To: Ignatios Souvatzis <ignatios@cs.uni-bonn.de>
From: None <drochner@zel459.zel.kfa-juelich.de>
List: tech-kern
Date: 03/14/1999 16:33:27
ignatios@cs.uni-bonn.de said:
> > There is this ALIGNED_POINTER() check which is always "1" on
> > i386, so the message is triggered even if the code checks correctly.
> Is this an aligned_pointer() or an unaligned_pointer()? I'm not sure I
> fully understood the problem. 

The pointer is not aligned, which is OK for i386. (Accesses might
be slower, but not worth falling back to byte access or copying
the whole stuff.)

The bus_space functions, however, do stricter checks if
BUS_SPACE_DEBUG is enabled. This is intended too, because
this way driver flaws can be found.

What bothers me is that these two parts don't know of each
other -- I want to do the strict checks within drivers because
this might be helpful to find problems, but the price of
getting a lot of console error messages about referring to problems
which are already solved is too high.

That's why I propose to introduce a new check macro which
depends on the BUS_SPACE_DEBUG setting and makes sure that
the pointer does not trigger a false alarm.

best regards
Matthias