)]}'
{
  "commit": "1dad939ddbbd8d64e1edc7799df00a9e591b4197",
  "tree": "b2bb098cc125ed2761ceb9f3a906dc844f24347c",
  "parents": [
    "b5254eee7994ba0a44ba7386cb66c2ce2f30fcc6"
  ],
  "author": {
    "name": "trem",
    "email": "tremyfr@yahoo.fr",
    "time": "Tue Oct 02 14:04:38 2007 -0700"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@sunset.davemloft.net",
    "time": "Wed Oct 10 16:54:28 2007 -0700"
  },
  "message": "ipg.c doesn\u0027t compile with with CONFIG_HIGHMEM64G\n\nI\u0027ve tried to compile 2.6.23-rc8-mm2, but it fails on ipg.c with the\nerror : ERROR: \"__udivdi3\" [drivers/net/ipg.ko] undefined!\n\nI\u0027ve instigated a bit, and I\u0027ve found this code in ipg.c :\n\nstatic void ipg_nic_txfree(struct net_device *dev)\n{\n       struct ipg_nic_private *sp \u003d netdev_priv(dev);\n       void __iomem *ioaddr \u003d sp-\u003eioaddr;\n       const unsigned int curr \u003d ipg_r32(TFD_LIST_PTR_0) -\n               (sp-\u003etxd_map / sizeof(struct ipg_tx)) - 1;\n       unsigned int released, pending;\n\nsp-\u003etxd_map is an u64\nbecause :\n\tdma_addr_t txd_map;\n\nAnd in asm-i386/types.h, I see :\n#ifdef CONFIG_HIGHMEM64G\ntypedef u64 dma_addr_t;\n#else\ntypedef u32 dma_addr_t;\n#endif\nI my config, I use CONFIG_HIGHMEM64G\n\nsizeof(struct ipg_tx) is an u32\nSo the div failed on i386 because of u64 / u32.\n\n[akpm@linux-foundation.org: cleanups]\nCc: Sorbica Shieh \u003csorbica@icplus.com.tw\u003e\nCc: Jesse Huang \u003cjesse@icplus.com.tw\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dfdc96fcadecd2537c3880d64124d091e3a34bd4",
      "old_mode": 33188,
      "old_path": "drivers/net/ipg.c",
      "new_id": "59898ce54dcf3170a7579d28aa12c0d4bce35bee",
      "new_mode": 33188,
      "new_path": "drivers/net/ipg.c"
    }
  ]
}
