First increment of photon counter happens at 10, second at 510, or first counter increment at 1, second at 501, third at 1001, sounds pretty non-linear to me

The

*increase* is constant. That makes it linear, if the original values are linear.

"Linear" requires a reasonably fixed ratio between photons and ADU output values

There are no photons and no ADU at the stage we are talking about (i.e. numerical representation). There are some measured, linear values, no matter how they have been arrived at. Now the question is, how they can be recorded.

I nowhere suggested to

*measure* the light intensity differently from how it is measured now; "counting the photons" is only symbolic, as there is no such thing on the sensor, AFAIK. I am suggesting, that given a set of measured values, they can be

*recorded* different ways, by varying the correlation between the measured and recorded values. (Note, that this correlation is not only not god-given, it is not fix even with the same camera.)

Furthermore, "0 = 0" is not correct. The measured/recorded value 0 represents all values under some limit. Likewise, 16383 (or whatever the clipping point is) represents all values above that as well. Therefor linearity does not include the two extreme values. In fact, non-linearity can include a range of values. This is the nature of the data, it has nothing to do with the numerical representation.

(Guillermo posted a raw file from the Nikon D3. I found, that the non-linearity of the green values streches from 15750 to 16060, while all red and all blue pixels clip "at once", though red and blue not together.)