1. 29 Mar, 2008 1 commit
    • Grant Grundler's avatar
      [netdrvr] tulip_read_eeprom fixes for BUG 4420 · 209261c0
      Grant Grundler authored
      If "location" is > "addr_len" bits, the high bits of location would interfere
      with the READ_CMD sent to the eeprom controller.
      
      A patch was submitted to bug:
          http://bugzilla.kernel.org/show_bug.cgi?id=4420
      
      which simply truncated the "location", read whatever was in "location
      modulo addr_len", and returned that value. That avoids confusing the
      eeprom but seems like the wrong solution to me.
      
      Correct would be to not read beyond "1 << addr_len" address of the eeprom.
      I am submitting two changes to implement this:
      1) tulip_read_eeprom will return zero (since we can't return -EINVAL)
         if this is attempted (defensive programming).
      2) In tulip_core.c, fix the tulip_read_eeprom caller so they don't
         iterate past addr_len bits and make sure the entire tp->eeprom[]
         array is cleared.
      
      I konw we don't strictly need both. I would prefer both in the tree
      since it documents the issue and provides a second "defense" from
      the bug from creeping back in.
      Signed-off-by: default avatarGrant Grundler <grundler@parisc-linux.org>
      Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
      209261c0
  2. 28 Mar, 2008 3 commits
  3. 27 Mar, 2008 5 commits
  4. 26 Mar, 2008 31 commits